一般互联网公司 如何进行高并发的架构

一般互联网公司 如何进行高并发的架构,第1张

一、什么是高并发
高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。
高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。
响应时间:系统对请求做出响应的时间。例如系统处理一个>电子商务网站高负载,简单可以分为前端和后台:
前端主要是(应该没有文件下载吧),因为是电子商务网站,少不了大量的,用户集中的情况下,网页加载就会变的极其缓慢。
解决思路:1、压缩,使产品图不失真的情况下尽可能的减少体积,节省宽带。2、增大服务器带宽。3、优化网页代码,尽量采用异步加载方式。4、CDN
后台则是数据处理和数据库负载,电子商务网站后台除了庞大的用户数据要处理意外,还有大量订单,和结算数据。
解决思路:增大数据库服务器配置。
高并发,是所有访问量大的网站都会遇到的问题,并发数是指同一时刻,服务器能接受多少次同时访问,比如服务器配置并发数为200,则这一刻只能允许200个用户同时访问,超过并发数,轻则用户打不开网站,严重的则是服务器宕机。
解决思路:1、CDN。2、增加服务器配置
注:CDN是现在网站普遍使用的加速方案,对减轻服务器负载,避免高并发,缓解恶意攻击都有很好的效果,其主要原理就是将服务器上的数据分发给多个服务器,用户访问的是CDN服务器,从而减轻和保护了网站服务器,也就是常说的云服务器。

一、背景综述

并发就是可以使用多个线程或进程,同时处理(就是并发)不同的 *** 作。

高并发的时候就是有很多用户在访问,导致系统数据不正确、糗事数据的现象。对于一些大型网站,比如门户网站,在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节:使用高性能的服务器、高性能的数据库、高效率的编程语言、还有高性能的Web容器。这几个解决思路在一定程度上意味着更大的投入。

使用一般的synchronized或者是lock或者是队列都是无法满足高并发的问题。

二、解决方法有三:

1使用缓存

2使用生成静态页面

html纯静态页面是效率最高、消耗最小的页面。我们可以使用信息发布系统来实现简单的信息录入自动生成静态页面,频道管理、权限管理和自动抓取等功能,对于一个大型网站来说,拥有一套高效、可管理的信息发布系统CMS是必不可少的。

3服务器分离

是最消耗资源的,僵和页面分离可以降低提供页面访问请求的服务器系统压力,并且可以保证系统不会因为问题而崩溃。

3写代码的时候减少不必要的资源浪费:

不要频繁得使用new对象,对于在整个应用中只需要存在一个实例的类使用单例模式对于String的连接 *** 作,使用StringBuffer或者StringBuilder对于utility类型的类通过静态方法来访问。

避免使用错误的方式,如Exception可以控制方法推出,但是Exception要保留stacktrace消耗性能,除非必要不要使用 instanceof做条件判断,尽量使用比的条件判断方式使用JAVA中效率高的类,比如ArrayList比Vector性能好。)

使用线程安全的集合对象vector  hashtable

使用线程池

不同类型的网站对于服务器资源的占用情况也不一样

如果是普通的企业站或者文字为主的网站不需要做负载均衡,用一台四核至强处理器4G以上内存10M以上带宽的配置基本上就能满足

如果是较大规模或者是视频内容较多的网站,则会对服务器资源占用较高推荐用双至强八核处理器32G内存1T硬盘的配置来放数据库,然后再用几台普通四核配置的机器放网站前端来做负载均衡即可带宽需要根据你们的具体需求来决定


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存