烟台SEO,seo+互联网思维,移动互联网思维,SEO思维爱好者。泥鳅SEO博客专注网站建设,网站优化,关注烟台SEO个人博客为你解答更多,网络营销推广问题。
  • 首页
  • 从0到1,Java Web网站架构搭建的技术演进

作者:泥鳅2017-11-22 22:46分类: 标签: 网站优化 网站架构 Web架构搭建

注:工作也有几多年了,无论是身边遇到的还是耳间听闻的,多多少少也积攒了自己的一些经验和思考,当然,我并没有接触太多高大上的分布式架构实践,所以总结的经验相对比较零碎,欢迎大家随时补充。

QQ截图20171028082048.png

俗话说得好,冰冻三尺非一日之寒,滴水穿石非一日之功,罗马也不是一天就建成的,对于开发人员来说,一个好的架构并不是一蹴而就的。

初始搭建

最开始,就是各种框架一搭,然后扔到 Tomcat 容器中跑,这时候我们的文件、数据库、应用都在一个服务器上。

服务分离

随着系统的上线,用户量也会逐步上升,很快一台服务器已经满足不了系统的负载,这时我们就要在服务器还没有超载时,提前做好准备。

由于我们是单体架构,优化架构在短时间内是不现实的,增加机器是一个不错的选择。这时,我们可能要把应用和数据库服务单独部署,如果有条件也可以把文件服务器单独部署。

反向代理

为了提升服务处理能力,我们在 Tomcat 容器前加一个代理服务器,一般使用 Nginx,当然你如果更熟悉 Apache 也未尝不可。

用户的请求发送给反向代理,然后反向代理把请求转发到后端的服务器。

从严格意义上说,Nginx 是属于 Web 服务器,一般处理静态 HTML、CSS、JS 请求;而 Tomcat 属于 Web 容器,专门处理 JSP 请求,当然 Tomcat 也是支持 Html 的,只是效果没 Nginx 好而已。

反向代理的优势,如下所示:

隐藏真实后端服务。

负载均衡集群。

高可用集群。

缓存静态内容实现动静分离。

安全限流。

静态文件压缩。

解决多个服务跨域问题。

合并静态请求(HTTP/2. 0 后已经被弱化)。

防火墙。

SSL 以及 http2。

动静分离

基于以上 Nginx 反向代理,我们还可以实现动静分离,静态请求如 HTML、CSS、JS 等请求交给 Nginx 处理,动态请求分发给后端 Tomcat 处理。

Nginx 升级到 1.9.5+ 可以开启 HTTP/2.0 时代,加速网站访问。当然,如果公司不差钱,CDN 也是一个不错的选择。

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

已有 0/39 人参与

发表评论:

欢迎使用手机扫描访问本站,还可以关注微信哦~