Easter79 Easter79
3年前
tbox新增stackless协程支持
tbox之前提供的stackfull协程库,虽然切换效率已经非常高了,但是由于每个协程都需要维护一个独立的堆栈,内存空间利用率不是很高,在并发量非常大的时候,内存使用量会相当大。之前考虑过采用stacksegment方式进行内存优化,实现动态增涨,但是这样对性能还是有一定的影响,暂时不去考虑了。最近参考了下boost和protothreads的st
Stella981 Stella981
3年前
Python 多进程程批量爬取小
使用python多进程跑同样的代码。python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。Python提供了非常好用的多进程包multiprocessing,只需要定义一个函数,Python会完成其他所有事情。借助这个包,可以轻松完成从单进程到并发执行的转换。multiproc
Wesley13 Wesley13
3年前
Java多线程之Semaphore用法
本文目录:Semaphore基本概念Semaphore使用案例:3个停车位,6辆车去抢,走一辆,抢一个停车位。1.Semaphore基本概念在信号量上我们定义两种操作:1.信号量主要用于两个目的,一个是用于多个共享资源的互斥使用,另一个用于并发线程数的控制。2.acquire(获取)
Easter79 Easter79
3年前
SSO单点登录基于CAS架构封装 Memcached 实例
SSO认证中心是CAS整个应用架构的一个极其重要的关键点,必须满足如下两点要求:1.高可用,不允许程序发生故障。如果认证中心发生故障,整个应用群将无法登录,导致所有服务瘫痪。2.高并发,因为所有用户的登录请求都需要经过它处理,其承担的处理量往往是相当巨大的。其中memcached的CAS源码MemCacheTicketRegistry.java类
Stella981 Stella981
3年前
Rust开发环境搭建
1.Rust概述按照百度百科的说法,Rust是一门系统编程语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。Rust在语法上和C类似,但是设计者想要在保证性能的同时提供更好的内存安全。Rust最初是由Mozilla研究院的GraydonHoare设计创造,然后在DaveHerman,Brend
WeiSha100 WeiSha100
2年前
学习系统开源软件
学习系统开源软件,有开发文档,前后台源码,源码可二次开发。私有化部署,内网外网均可部署,支持多个终端,功能有点播,题库,直播,考试,督学,营销等,经搭建测试软件源码完整可用。1、点播:在线点播视频,可上传图文资料,习题,课件等,视频防盗等2、题库:可批量管理上传的题库,随时随地刷题,试题防复制3、考试:多场景考试设置,高并发、强制交卷、考试防作弊、成绩导出、
CGLIB动态代理对象GC问题排查 | 京东云技术团队
一、问题是怎么发现的最近有个新系统开发完成后要上线,由于系统调用量很大,所以先对核心接口进行了一次压力测试,由于核心接口中基本上只有纯内存运算,所以预估核心接口的压测QPS能够达到上千。压测容器配置:4C8G先从10个并发开始进行发压,结果cpu一下就飙升
你真的了解@Async吗? | 京东云技术团队
开发中会碰到一些耗时较长或者不需要立即得到执行结果的逻辑,比如消息推送、商品同步等都可以使用异步方法,这时我们可以用到@Async。但是直接使用@Async会有风险,当我们没有指定线程池时,他会默认使用其Spring自带的SimpleAsyncTaskExecutor线程池,会不断的创建线程,当并发大的时候会严重影响性能。所以可以将异步指定线程池使用
京东云开发者 京东云开发者
2个月前
加锁失效,非锁之过,加之错也
作者:京东零售邢成引言多个进程或线程同时(或着说在同一段时间内)访问同一资源会产生并发问题。银行两操作员同时操作同一账户就是典型的例子。比如A、B操作员同时读取一余额为1000元的账户,A操作员为该账户增加100元,B操作员同时为该账户减去50元,A先提交