千家信息网

小微企业springboot集群方案之plan

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,这篇文章给大家介绍小微企业springboot集群方案之plan,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、小微企业特点互联网的小微企业,往高大上说就是新锐企业,往低里说呢
千家信息网最后更新 2024年09月22日小微企业springboot集群方案之plan

这篇文章给大家介绍小微企业springboot集群方案之plan,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

1、小微企业特点

互联网的小微企业,往高大上说就是新锐企业,往低里说呢就是穷B企业,不管怎么样,反正特点都是一样的:

  • 没有多少开发人员,能少一个是一个

  • 没有专职的岗位,DBA,运维,测试,这都是啥,反正都是开发人员一肩挑(如果老板很讨厌的话,会加一句,全栈)

  • 没有自己的硬件,反正能不自己建就不自己建(如果老板打听过的话,会说一句,上云)

  • 要快(如果老板很烦人的话,会加一句,要敏捷)

在这种条件下,有能力的程序员表示很有挑战性,纷纷用脚投票去了腾讯、阿里这些大厂。而那些没有能力的码农(比如我),则不畏惧挑战,决意在这种恶劣的环境下艰难求生(主要是大厂不要)。

其实在企业的很长的一个发展阶段,单机的性能是可以扛着性能压力的,所以我们的第一个方案就简单了。

2、PLAN A

  1. 在云服务商购买一个公司需要的域名,并配置域名指向购买的服务器IP

  2. 在云服务商购买一台云服务器,安装好nginx和java环境,nginx配置域名的指向,配置程序指向的云数据库地址

  3. 在云服务商购买云数据库服务,比如用的最多的mysql

上面三种商品在一家云服务商就能完成,全程只需要买买买就好了。而且价格都还算好,一台普通的云服务器在5000左右(1年费用),数据库在6000多(一年费用),域名便宜,只要几十块而已,而运行起来也很简单,只要把程序打包上去就可以跑起来了。

如果还需要省钱,当然可以在云服务器上自建mysql,那么云数据库的钱就省了,但考虑到以下几点,我还是认为开始就要分开服务器和数据库:

  1. 企业的开发人员用人成本是很高的,如果在云服务器上自建数据库,那么就需要对数据库比较熟。但大部分开发人员用数据库比较多,建就一般般了,而且就算建的话,对调参和分配权限也很难精通,为了节约人工成本,能花钱买服务的就花钱买了

  2. 互联网企业往往数据的价值大过应用程序的价值,所以为了数据的安全,还是和应用服务器拆开来比较保险

  3. 云服务的价值很大方面体现在性能伸缩的灵活性上,而数据库是最常见的性能瓶颈,如果应用服务器和数据库在同一台机,很可能即使提升了服务器配置,由于资源分配不到数据库上面(这个对数据库配置人员要求比较高),所以不能在最短时间解决问题,如果分开的话,一旦定位到是数据库性能瓶颈,花钱可以直接针对数据库做性能提升

其实这个架构虽然很low,但其实很多的微小企业用起来一点问题都没有,性能瓶颈直接靠花钱就能实时提升,压力可以说是很小的。我了解的很多企业在倒下前都还没有把应用服务器的性能用满,可见应用服务器性能绝对不是微小企业的短板。但缺点也很明显,那就是单点问题,全公司技术体系于一台服务器,万一有个好歹,企业就要无技术裸奔了。

3、PLAN B

这就是一个最简单的集群,加了一台服务器,再把一些服务甩给了云服务商,具体的情况如下:

  1. 多购买一台服务器,其实集群很重要的一个判断,就是是否能快速方便的横向扩展,在服务器出现性能瓶颈的时候,可以通过快速的增加服务器的方式解决问题。小微企业的业务发展是抽风式,不知道什么时候就突然上量了,所以能直接靠加服务器横向扩展解决性能问题是最幸福的。

  2. 多台服务器就会有负载轮询的问题,如果很穷,那么当然可以自己搭建nginx的集群,但考虑到大多数程序员对于nginx也是用的多,配置的少,这活也可以直接甩给云服务商提供的负载均衡服务,而且一般都还提供界面分配负载的权重,比自建还是要方便很多,后面做灰度上线也会用到。

  3. 云服务商提供的负载均衡一般会有一个虚拟IP,把域名指向这个虚拟IP就完事了,如果在云服务器上还有多个应用起不同的端口,那么在服务器上还要起一个自己的nginx作为本地代理。

  4. 在单台服务器上,session和缓存都不是问题,但在集群的环境下这都是事啊,虽然spring boot在这方面简化了很多工作,但该改的还得改,该配的还得配,这里通过redis搞定session和缓存,如果很穷,redis也可以自己集群,但同样大部分人redis也是用的多,配的少,这活也扔给云服务商了。

  5. 除了缓存,还有个需要多机共享的是文件,不能服务器1上传的文件,服务器2看不到。如果很穷,自己搭建分布式文件系统(比如TFS,FastDFS)也是可以的,不过还是那句话,何必呢,使用云服务商提供的分布式文件服务就好了。

  6. 其实还有一个集群会遇到的问题就是定时任务,但这个没办法通过买买买来解决,不过spring quartz有解决方案,这个是程序员分内之事,就不麻烦云服务商了。

虽然看起来不像是给微小企业的集群方案,里面全是买买买,但和人工成本比起来,这种一年只要几千块的服务(负载均衡、redis和分布式文件系统可以按量来付费),其实是很便宜的,而且按量付费的话,可以保证企业在业务量起来的情况下才会有费用的增长。而业务量如果起来了,钱还是问题吗?

关于小微企业springboot集群方案之plan就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

服务 服务器 企业 数据 数据库 性能 服务商 集群 问题 就是 程序 应用 配置 方案 人员 域名 文件 还是 指向 瓶颈 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 在远程数据库服务器上开放权限 多年软件开发面试题 免流服务器架设 双生幻想找不到自己所在的服务器 关系型数据库基本特征是 我的世界服务器如何给管理员 lol免费代理服务器 重庆品质软件开发价格优惠 vb数据库同时更新到另一个表 美国搞数据库管理薪酬 2018网络安全形势报告 小吃数据库 人工智能与网络安全什么关系 学习了软件开发去哪里上班 传统保险互联网保险科技赋能 方言俗语整理与数据库 远盾网络技术股份有限公司 江苏信息网络技术推荐咨询 网络安全运维累吗 最新网络安全知识宣传 万达网络科技集团实业互联网 智能产品控制软件开发 软件开发应该选什么大学 点识网络技术上海 人工智能与网络安全什么关系 gooogle连接服务器出问题 dcs服务器怎么打字聊天 dream服务器视频原版合集 新识代网络技术做什么的 数据库系统的核心任务
0