乐趣区

关于后端:从服务器到云托管到底经历了什么

“服务上云”始终是一个进行时,在 2010 年 – 2017 年期间,发力点重心都在「自有物理建设」到「IAAS 基础设施即服务」,各个云厂商都在此基础上推出网络产品、数据库产品、存储产品,提供「PAAS」层面的产品来促成上云的过程,咱们称为“服务上云 1.0”

“服务上云 1.0”实质上就是将自建的物理服务设施迁徙到云厂商提供的服务设施,并装备了一大批业余的工具。但在这一过程中,外在的对于开发者所选的服务技术架构,却很少干涉涉及;目前大部分流通的都是传统服务架构模式。

传统服务架构模式是什么,有什么特点?这里举几个例子大家感受一下:

a. 应用本地文件系统来长久化存储,数据文件和利用的文件混合在一起。

b. 在同一个服务器上运行很多服务,比方 MySQL、Redis、Nginx 以及一大堆定时工作。

c. 应用大杂烩式的脚本和手工流程进行装置和降级。

d. 配置是存储在文件里的,通常散落在多个地位,并与利用的文件混在一起。

e. 过程间的通信是借助本地文件系统进行的(比方在磁盘上放一个文件,另一个过程来读取),而不是 TCP/IP。

f. 依照单个服务器上只运行一个利用的实例的形式来设计的。

这些特点会在执行保护的过程中暴露出很多问题,比方:

a. 自动化部署很艰难,尽管能够通过各种工具来实现,但仍有很大的水分空间存在。

b. 如果须要运行利用的多个不同的实例,很难让多个实例在同一个服务器上同时存在。

c. 如果服务器停机,因为须要手工流程所以须要较长的工夫来复原。

d. 部署新版本的过程根本是手动的,或者大部分是手动的,难以回滚。

e. 很有可能测试环境与生产环境有较大差别,导致一些生产环境问题不能在测试期间发现。

f. 很难通过减少新的实例来进行横向扩大。

这些问题会随着业务的倒退日益突出,最终极大的耗费人力老本,也累积了很多危险因素,即便服务设施上云,有弱小的环境,外部零碎的保护问题始终妨碍和影响高质量的服务。

容器技术,躲避了传统服务架构模式所带来的问题,作为一种新的架构模式开始在近几年衰亡。

容器服务,就是通过标准化形式,将业务代码和其所依赖的环境资源一起打包成为镜像,而后在服务器中启动一个实例运行这个镜像,就能够提供服务了。

比方你去网吧工作,应用网吧的污浊零碎,须要装置本人所须要的办公软件才可能开始正式工作,这里就类比你在传统模式下须要依据服务设施的不同来进行针对性运维,才可能把本人的业务我的项目运行起来。容器服务在这个例子中就是,你带了一块硬盘(或者一个 U 盘),将你的办公零碎存储在其中,到网吧里直接插入你的硬盘,就能够立即应用相熟的零碎了。

咱们总结容器技术的几个特点:

a. 部署容易,能够应用新的容器镜像间接替换整个老版本。

b. 自动化部署也绝对容易,能够齐全由 CI 来驱动。

c. 部署失败时的回滚只有切换到之前的镜像就行,十分不便。

d. 利用降级不须要去思考简单的降级配置流程,不用执行繁琐的步骤。

e. 雷同的容器镜像能够在不同的环境中充沛测试,再间接部署到生产环境,确保测试环境与生产环境完全一致。

f. 零碎更容易从宕机中复原,因为能够迅速在新硬件资源上启动装有这个利用镜像的新容器,并附加到同一数据源上。

g. 开发人员能在本地以容器的模式,在更真切的环境里测试新性能。

h. 硬件资源的利用更高效,在繁多主机上能够运行多个容器利用。

i. 容器化是反对零停机降级、金丝雀部署、高可用和横向扩大的坚实基础。

容器技术和 Docker 到底是什么关系?Docker 是构建容器的技术工具,是目前风行的。就好比安卓和 IOS(Docker)是手机终端操作系统(容器技术)中比拟风行的,因为风行,所以各个厂商都会适配,使得技术计划能够畅行无阻没有门槛。当咱们构建的服务越来越多,同一个服务因为并发可能蕴含多个容器实例,那么如何无效的治理协调多个容器的地位资源?如何解决容器与容器之间的通信?这就须要容器编排技术。

Kubernetes 是目前最流通的容器编排技术,提供 API 来管制容器的执行形式和地位,操作执行 Docker 容器和调节工作负载,解决在调整跨多部伺服器部署多个容器规模时的一些简单作业。

咱们来看一下规范的容器服务须要的配置,其实用于对容器编排十分相熟的团队应用,能够灵便配置,依照本人的需要来调整

微信云托管,通过简化繁冗的配置流程,提供易配置高可用的容器服务;并整合与业务相干的套件,蕴含可主动扩缩容的数据库,对象存储等,同时也提供很多微信在服务技术的一些积攒,打造平安的有生态特色的一站式后端服务平台。

也就是说,你即便没有微信相干应用服务,也能够应用微信云托管来为本人的业务提供服务,其在防刷攻打,平安链路方面都有很强的劣势特点。

腾讯云与千锋联合推出精品我的项目课程《锋运票务零碎 —— 基于微信云托管的锋运票务管理系统》已上线“腾讯云开发者社区”,帮你理解残缺的微信云托管部署流程,学习实战级的小程序开发。机构名师手把手教学,共计 3 小时满满干货课程,快来支付全套课程吧:

《锋运票务零碎 —— 基于微信云托管的锋运票务管理系统》

收费支付课程福利:腾讯云产品代金券

退出移动版