笔者序
笔者第一次写类似的文章,欢迎感兴趣的同学进行交流,自身非专业软件开发等行业人员(学过,没学好被淘汰了就忘记了),虽然在云计算这个行业里面摸爬滚打,面对客户也有几年了,但是更多的时候是客户比我懂,只能在自己熟悉的领域给出一些非专业的意见,如果有哪些地方讲错了,还望海涵。我是真菜鸟OvO
云计算服务带来的好处
回到正题,让我们来讲一下云计算服务所带来的东西。当然,在这样的一个平台,我就不讲些什么服务器啊,将本地的应用部署在云服务器上所带来的提升和优势了。今天,我带大家了解下能够直接使用的PaaS服务和SaaS服务在应用的开发部署等方面所能带来的优势,希望能解决大家会遇到的实际问题。
1-数据库
抛开服务器部署应用本身不谈,各位在做软件开发中有一个避不开的东西,那就是数据库,不过说实话,现在这个开发环境下,有些公司使用云原生开发,选择使用到server less和云函数服务之后,其实服务器都不太算刚需了,虽然我们都知道这些东西的底层是什么,但是在使用中对服务器是无感知的。
扯得有点远了,让我们回到数据库上面,不知道各位的数据库一般是自行部署还是购买云上的成品数据库使用呢。如果是自建数据库在使用上有没有遇到过什么问题呢。我虽然不是专业人士,但是之前为了考证,也还是接触了下服务器内自建数据库和调用华为云的成品数据库,在我这种外行的感知中,使用差异还是非常大的。
- 部署方式
自行部署:环境准备→安装配置→安全加固→数据导入→监控维护
云数据库:无需部署-开箱即用
- 账号管理
自行部署:进入到数据库内创建用户,定向授权
云数据库:可视化操作页面
- 端口管理
自行部署:修改配置→重启服务器→配置防火墙规则
云数据库:一键放通
之前学习的时候还要百度代码(可能我太菜了qaq)
使用云数据库后,能有效的简化数据库部署和运维,以华为云举例,华为云数据库提供数据管理服务,无需登录到数据库内部,在华为云官网操作页面即可进行操作,不再需要登录到数据库里面使用复杂的sql语言操作(菜鸟福音),当然如果有需求,云数据库也没有关闭登录到数据库的入口。
然后就是使用数据库的一个非常实际的问题了,数据库优化。数据库优化总结下就是架构设计、查询调优、资源管理、硬件配置这几个大方向嘛(AI总结的~我是真滴菜)。关于这一块,其实云数据库能够实际做的就不多了,特别是优化索引,表库拆分这些。这两个只能让负责数据库的大手子去操作了,如果问我,我就只能让你们增加数据库的配置了(哈哈)。
但是呢,云数据库在优化方面还是有些可取之处的,华为云智能DBA功能主要面向开发人员和数据库管理人员,提供数据库运维和智能诊断的可视化界面,提升数据库的运维能力与易用性。通过告警统计、资源使用情况、健康智能诊断、性能指标数据、容量预估等维度分析,帮助用户快速定位故障,实时了解实例运行情况。
基于云端的算力,不用担心数据库的底层硬件配置。当然,这是一般情况,实际上如果是一个非常大的核心数据库的情况下,哪怕是建议部署在云端,也是部署在裸金属服务器里面而不是直接买云数据库(不赚黑心钱),核心数据库炸了影响还是有那么亿点点大的。
由上可见,在实际使用在,使用云数据库是比在服务器内自建数据库方便很多的。但是在我和客户多年的实际交流中,还是有很多的客户更愿意购买服务器来自行搭建数据库,将数据库,应用,部署在同一台服务器上。当然,部分客户做出这种举动我也能理解,首先是实际需求,没有弹性伸缩等需求,没有必要单独购买数据库。其次,一台服务器搞定应用和数据库便宜啊,对很多公司而言数据库数据量并不大,所以放在一台服务器无所谓了,还能节约成本。当然这个首先和其次顺序不一定是对的,而且其实根据我在业内多年的对客经验,实际成本并不会怎么降低,因为服务器内运行数据库也需要更好的服务器,以及多投入维护人员,一来一回这个费用其实仁者见仁了,具体问题具体分析。
水到一半突然发现该下班了......本来还想水点对象存储的,因为除了数据库里面的sql数据以外,其它的很多数据基本都是可以放在对象存储里面的,而且在大文件的存储的时候,使用对象存储是真的合适啊,网站的图片啊,视频,这些使用对象存储真的非常nice,不依托于服务器的网络而是依托于对象存储的网络,在不影响网站访问的情况下提供快速上传和下载,这能又水一篇不对,这能解决多少的问题啊。
最后,有什么问题也欢迎大家交流,好也好,坏也罢,有交流才会有收获,有什么云的需求和问题都可以找我。不包搞定OvO,我太菜了-理直气壮。