高并发架构技术解决方案?

高并发架构技术解决方案?,第1张

高并发架构的难点是什么?
高并发架构最大问题主要是由于网站PV访问量大,单台服务器承载大量访问所带来的压力,所以会采用多台服务器进行分流,采用服务器集群技术,对于每个请求访问会被 发送到不同的服务器。
这样架构的难点就在管理、维护、监控、负载等等都面临很大的技术问题,同时还需要应对某些业务的突发流量,像秒杀、促销等场景化使用什么技术解决高并发?
互联网分布式架构设计,提高系统并发能力的方式,方法论上主要有两种:垂直扩展(Scale Up)与水平扩展(Scale Out)。
垂直扩展:提升单机处理能力。垂直扩展的方式又有两种:
(1)增强单机硬件性能,例如:增加CPU核数如32核,升级更好的网卡如万兆,升级更好的硬盘如SSD,扩充硬盘容量如2T,扩充系统内存如128G;
(2)提升单机架构性能,例如:使用Cache来减少IO次数,使用异步来增加单服务吞吐量,使用无锁数据结构来减少响应时间;
在互联网业务发展非常迅猛的早期,如果预算不是问题,强烈建议使用“增强单机硬件性能”的方式提升系统并发能力,因为这个阶段,公司的战略往往是发展业务抢时间,而“增强单机硬件性能”往往是最快的方法。
不管是提升单机硬件性能,还是提升单机架构性能,都有一个致命的不足:单机性能总是有极限的。所以互联网分布式架构设计高并发终极解决方案还是水平扩展。
水平扩展:只要增加服务器数量,就能线性扩充系统性能。水平扩展对系统架构设计是有要求的,如何在架构各层进行可水平扩展的设计,以及互联网公司架构各层常见的水平扩展实践。
水平扩展要怎么来做?首先是软件服务拆分到不同的服务器进行部署,全部堆积在一台上性能将会受限。例如:Redis 就只是部署在独立的服务器上,其它软件都在这服务器上出现增加各个软件服务部署的服务后,采用技相关技术手段分担到各个服务器上。nginx反向代理层可以通过“DNS轮询”的方式来进行水平扩展。dns-server对于一个域名配置了多个解析ip,每次DNS解析请求来访问dns-server,会轮询返回这些ip。PHP站点层可以通过修改nginxconf实现负载均衡机制来进行水平扩展。从而设置多个web后端。服务层可以通过服务连接池来进行水平扩展;这里一部需要实现服务化,PHP像swoole tarsphp等数据库可以按照数据范围,或者数据哈希的方式来进行水平扩展;那高并发架构是什么样的?
常见互联网分布式架构如上,分为:
(1)客户端层:典型调用方是浏览器browser或者手机应用APP
(2)反向代理层:系统入口,反向代理
(3)站点应用层:实现核心应用逻辑,返回html或者json数据
(4)服务层:服务化,例如像Swoole
(5)数据-缓存层:缓存加速访问存储
(6)数据-数据库层:数据库固化数据存储

1-技术有什么区别
首先通信上目前的主流是>编辑推荐
编辑
本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚走向成熟稳定的历程。
没有晦涩难懂的术语,没有诘屈聱牙的文句,没有故弄玄虚的观点……
明明白白的语句,清清楚楚的文法,干净利落的建议——让读者直接体会网站架构的紧要处,不容马虎的关键点——这恰好是一个优秀的网站架构所必备的要素。
如果说“水不在深,有龙则灵”,那么对于想了解网站架构的读者而言,这本书恰好是“书不在多,有它则行!”
还犹豫什么呢?
内容简介
编辑
本书通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,为读者呈现一幅包括技术选型、架构设计、性能优化、Web 安全、系统发布、运维监控等在内的大型网站开发全景视图。
本书不仅适用于指导网站工程师、架构师进行网站技术架构设计,也可用于指导产品经理、项目经理、测试运维人员等了解网站技术架构的基础概念;还可供包括企业系统开发人员在内的各类软件开发从业人员借鉴,了解大型网站的解决方案和开发理念。

但当B/S结构的eHR系统陆续面市后,用户才痛苦的意识到:原来B/S结构的eHR系统并没有想象的那么美好,甚至很多方面与传统的C/S比较起来相差甚远。那么究竟eHR系统应该采用什么技术架构开发,用户选择eHR系统应该选择C/S还是B/S?似乎成了困扰人力资源软件开发者和选型者共同的难题。 早期的财务、人事等应用大多数是C/S结构的程序,传统的GUI技术,开发工具大多数是VB、DELPHI、PB等,很多厂商经过多年的沉淀,在C/S应用开发上形成了诸多核心技术。例如,宏景世纪、金益康等;但一些后期进入的厂商一般就直接选择了B/S技术,例如,万古、奇正等。 目前,市场上主流的eHR系统采用的技术架构主要有三种模式:C/S、B/S、C/S+B/S基于Web的B/S方式其实也是一种客户机/服务器方式,只不过它的客户端是浏览器,为了区别于传统的C/S模式,才特意将其称为B/S模式。那么它们的特点是什么?各有那些优缺点?eHR系统技术架构究竟该如何选择?笔者根据多年从事eHR系统开发的经验,谈谈自己的一些观点,希望对那些即将开始人力资源信息化的客户有所帮助。 1、B/S模式的优点 具有分布性特点,可以随时随地进行查询、浏览等业务处理。 业务扩展简单方便,通过增加网页即可增加应用服务功能。 软件维护升级简单方便,集中布署就可实现所有用户的应用同步更新。 采用资源共享技术合理地利用稀有资源(数据库连接等业务组件对象),提高软件运行效率。 2、 B/S 模式的缺点 *** 作是以鼠标为最基本的 *** 作方式,无法满足快速 *** 作的要求。 页面动态刷新,响应速度明显降低。 网络传送的有效数据少,很大一部分是HTML标志,网络带宽利用率低。 GUI界面功能弱以及基于>

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13381040.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-25
下一篇 2023-07-25

发表评论

登录后才能评论

评论列表(0条)

保存