内容简介:『高级篇』承诺了大家要找一个互联网开源项目进行docker的容器化部署,国人最擅长不是创新而是改造,腾讯不是都是走别人的人,让别人无路可走。github和gitee里面很多相对说比较好的开源项目,并不建议完全抄袭,其实别人有现成的为啥不拿来用,还要自己写,毕竟技术更新这么快,能在巨人的肩膀上,绝对不从海底慢慢爬。来说正式,这次我在网上找了一个不错的开源代码,https://www.renren.io/community/project ,感谢作者的开源,咱们就在他的基础上开始吧!如果真对一个项目,做高负载,
『高级篇』承诺了大家要找一个互联网开源项目进行 docker 的容器化部署,国人最擅长不是创新而是改造,腾讯不是都是走别人的人,让别人无路可走。github和gitee里面很多相对说比较好的开源项目,并不建议完全抄袭,其实别人有现成的为啥不拿来用,还要自己写,毕竟技术更新这么快,能在巨人的肩膀上,绝对不从海底慢慢爬。来说正式,这次我在网上找了一个不错的开源代码,https://www.renren.io/community/project ,感谢作者的开源,咱们就在他的基础上开始吧!
目的
如果真对一个项目,做高负载,高可用,高性能部署方案。以互联网上一个开源项目为例,一起说说分布式集群运维部署整个过程。
-
大型项目
>如果采用单节点,首选性能会很差,其次因为没有冗余节点,一旦某个节点的宕机,就会出现整个系统的业务停机。所有集群话的方案是必然的, 准备采用5节点的 mysql 集群,6节点的 redis 集群,3节点的tomcat集群,2个节点的nginx节点。除了上边说到的集群,需要掌握haproxy和 nginx。还会使用keeplive做到双机热备,这样部署后,高可用。这样就可以做到高可用,高性能,高负载。
- 高速缓存
- 数据库
- 前端项目
- 后端项目
跟我一起了解互联网的架构
- 无状态session和有状态session。无状态容器。
- 分布式架构设计。
- docker如果完成分布式。
- 大型互联网设计架构的方案
说说一般人的状态
启动下数据库,跑一个 java 项目,运行下前端的项目。根本看不到大型互联网高负载,高可用,高性能,都觉得自己写的代码很牛,但是仅限于开发的环境,如果在开发环境java内存溢出了,整个项目都看不了了,在开发环境下都是单节点的。也就是说你的代码写的在牛有什么用啊?在牛的代码服务挂了也没用啊 老铁!只有把代码部署到集群的环境下,才能体现出来高负载,高可用,高性能。所以集群必须有!
集群
前端有集群,后端有集群,redis是集群,mysql是集群都是集群。只有使用了集群才能让项目高可用,高性能,高可用。当初我开发的项目都是一个mysql来执行,一个mysql的响应就很慢,数据库使用了集群后,由多个数据库集群来响应请求,速度肯定比以前快的很多,如果某个数据库的节点挂掉了出现了宕机,还有提前的节点替代。集群多了是一方面,还需要负载均衡和双机热备,实际上比下图要复杂的多。
还想说
主要不是说开发的事情,也不是开发业务的模块上,重点是定位到技术经理,如何将项目进行集群的部署和集群的搭建上,我找的开源项目只是比较合适实战,如果老铁你手里有现成的项目,可以使用自己的项目。
- 挂掉一个节点还有其他节点使用,这就是高可用吧?
- 集群了处理的请求更多了,这就是高性能和高负载吧?
PS:除了高级篇之前的docker几个系列还比较接地气,如何将docker和实际的开发中串联起来。让docker真正的接地气。找个项目就开始干!
>>原创文章,欢迎转载。转载请注明:转载自,谢谢!>>原文链接地址:已是最后文章已是最新文章
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First Web Design
Ethan Watrall、Jeff Siarto / O’Reilly Media, Inc. / 2009-01-02 / USD 49.99
Want to know how to make your pages look beautiful, communicate your message effectively, guide visitors through your website with ease, and get everything approved by the accessibility and usability ......一起来看看 《Head First Web Design》 这本书的介绍吧!