高并发,是不是后台要写成多线程?

YUDG 2018-01-08 05:44:01
加精
如题~~
请有经验的朋友,讲下。
感觉现在因为同时请求的人很多,服务器很卡。
...全文
9971 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
suxiao_mo 2018-04-27
  • 打赏
  • 举报
回复
卡和多线程没啥关系吧~
YUDG 2018-04-27
  • 打赏
  • 举报
回复
嗯,发这个帖子有段时间了。 当初是这样设计的,web端用户登录系统后,页面会定时请求后台,也就是操作redis,通过用户id来记录在线时间。 因为系统不大,给公司内部人员用,并发人数估计在百人左右。但是测试时候发现,几个开发人员用的时候都很卡。 所以特意来问问,是不是要这样做。 后来把操作redis请求改成线程了,就再没卡服务器了,一直都很顺畅。具体哪儿的原因,没有细究。 感谢各位的回复。
GOon_star 2018-02-07
  • 打赏
  • 举报
回复
如果业务处理上没有问题,没有必要加并发处理。 加服务器做前端分发,分担服务器的压力,不一定是代码的问题,找到问题症结,针对处理。
xiaocongzhi 2018-02-03
  • 打赏
  • 举报
回复
线程池控制线程分配
ply0022 2018-01-22
  • 打赏
  • 举报
回复
nginx反向代理是最简单的咯,肯定要的,然后最好看看服务器线程阻塞在哪里,不要乱加多线程,不是什么都要多线程的,不安全
ljh849893248 2018-01-17
  • 打赏
  • 举报
回复
换成soa的模型怎么样?
hp961218 2018-01-16
  • 打赏
  • 举报
回复
对你们老大说再配几个服务器
小灰狼 2018-01-16
  • 打赏
  • 举报
回复
如果本身就是一个基于HTTP的请求,那么多线程的事就是让 servlet 容器完成,你要处理的是单个线程下的逻辑 如果不是http项目,那就要自己启动线程,或者利用线程池
cattpon 2018-01-12
  • 打赏
  • 举报
回复
并不是~网上有教程啊~
itherael 2018-01-12
  • 打赏
  • 举报
回复
这种是设计问题 就统计一个在线时长,完全没必要开启多线程、配线程池等等操作,感觉就是高射炮打蚊子,既浪费了资源,又浪费了时间。 首先考虑业务,是实时显示还是单次查询,该业务在整个业务中处于什么位置,评估工程可以给予该业务的开销。 对于这种非功能性的需求,要么使用全局页面计时、统计登录和当前时间进行计算、或者JS框架进行处理等,没必要消耗大量后台的性能来做这种无关紧要的业务。
皇家肆掠者 2018-01-12
  • 打赏
  • 举报
回复
你这种多线程没用,多搞几台机器做负载专门做统计时长的。和访问网站应用服务器区分开,这样不影响正常业务
那个隔壁老黄 2018-01-11
  • 打赏
  • 举报
回复
用zookeeper咯。好像也是可以的。
游北亮 2018-01-11
  • 打赏
  • 举报
回复
对于web站点,应该避免多线程, 因为web服务器本身就是多线程响应请求的, 如果你收到某个用户的请求后,在请求里又起了多线程, 首先,这样做只能导致单个请求的处理时长变长了,因为多了CPU上下文切换时间; 其次,单个请求发起的多线程会影响接受用户请求的线程数量。 如果发起的多线程是处理io操作,那么是有效的,如果不存在io操作,纯cpu计算的代码,启动多线程是没有什么意义的, 这种情况下应该考虑通过消息队列转发到其它进程处理,然后当前请求快速返回, 具体业务具体分析,没有什么一成不变的
方元之外 2018-01-11
  • 打赏
  • 举报
回复
这有很多点的原因 比如 是否数据库慢,或者加入分布式消息队列,使消息平滑度过。 也可以加入缓存。 也要查看是否触发太多fullgc
Link8Guo 2018-01-11
  • 打赏
  • 举报
回复
楼主搜下io五种模型,我一般用完成端口
红中 2018-01-11
  • 打赏
  • 举报
回复
前端用的什么,setInterval()?这个方法有时候就是很卡。
什么都不能 2018-01-11
  • 打赏
  • 举报
回复
卡有多方面的原因,使用的容器,程序好用资源比高,io性能都可能成为瓶颈。
  • 打赏
  • 举报
回复
没几个人在线还卡的基本是你代码的问题
聪头 2018-01-10
  • 打赏
  • 举报
回复
多线程必须的,还有有个线程池处理多线程和排队问题
nettman 2018-01-10
  • 打赏
  • 举报
回复
关注
加载更多回复(11)

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧