表总体上分为三种: 1、表锁 Myisam 开销小,并发低,加锁快,不会出现死锁问题;锁粒度大,发生锁冲突的概率最高。 2、行锁 innodb 开销大,并发高,加锁慢,会出现死锁问题;锁粒度小,发生锁冲突的概率最低。 3、页面锁 开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之 ...
分类:
数据库 时间:
2019-07-09 16:46:57
阅读次数:
134
在互联网大并发应用大行其道的今天,应用的开发总是离不开锁,在分布式应用中,最常见的莫过于基于数据库的行级锁了,由于互联网公司中比较主流的数据库还是mysql,所以这一话题绕不开的就是mysql了,但是由于mysql中innoDb引擎特殊的机制,经常一不小心就会发生死锁,本次咱们就来聊一聊基于mysq ...
分类:
数据库 时间:
2019-07-08 10:46:37
阅读次数:
116
一些复杂的报表分析和搜索可以交给hadoop和elasticsearch,对于写并发大,读也并发大,我们可以考虑分库分表,主从读写分离或者两者结合等方式来提高并发性和时效性,例如PG大并发写,大数据查看可以用elasticsearch与PG数据同步来读,可以启到很好的效果。
分类:
数据库 时间:
2019-06-16 17:32:39
阅读次数:
743
(1)问题产生:使用500个线程并发下载tomcat工程中的一个文件时,服务器出现java.net.SocketException: Connection reset异常, 客户端出现connect timeout; (2)分析认为是服务器连接超过最大并发数而重置,导致客户端连接超时; 于是配置to ...
分类:
编程语言 时间:
2019-06-13 13:21:25
阅读次数:
463
SQL优化 SQL优化技术 对表的设计合理化(符合3NF) 添加适当的索引(index)[普通索引,主键索引,唯一索引,全文索引] 分表技术(水平分割,垂直分割) 读写(update/delete/add)分离 存储过程(模块化编程) 对MySQL配置优化(配置最大并发数 my.ini , 调整缓存 ...
分类:
数据库 时间:
2019-06-10 14:06:28
阅读次数:
148
Apacheprefork模型: 预派生模式,有一个主控制进程,然后生成多个子进程,使用select模型,最大并发1024,每个子进程有一个独立的线程响应用户请求,相对比较占用内存,但是比较稳定,可以设置最大和最小进程数,是最古老的一种模式,也是最稳定的模式,适用于访问量不是很大的场景。 优点:稳定 缺点:慢,占用资源,1024个进
分类:
Web程序 时间:
2019-05-29 21:59:34
阅读次数:
154
newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。 线程池的作用: 线程池作用就是限制系统中执行线程的数量。 根 据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果;少了浪费了系统资源,多了造成系统拥挤效率不高。用线程池控制线程数 ...
分类:
编程语言 时间:
2019-05-27 16:35:49
阅读次数:
157
MySQL主从复制,读写分离是互联网常见的数据库架构,该架构最令人诟病的地方就是,在数据量较大并发量较大的场景下,主从延时会比较严重。 为什么主从延时这么大? 答:MySQL使用单线程重放RelayLog。 应该怎么优化,缩短重放时间? 答:多线程并行重放RelayLog可以缩短时间。 多线程并行重 ...
分类:
数据库 时间:
2019-05-25 20:11:03
阅读次数:
156
1.dubbo的通信协议 ①dubbo协议 Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。 特点 : dubbo缺省协议,使用的是基于netty+hessian的tbremoting交互。 连接个数:单连接。 连接 ...
分类:
其他好文 时间:
2019-05-25 10:02:53
阅读次数:
151
如果没有设置uwsgi的--listen,如果sysctl -a | grep net.core.somaxconn发现net.core.somaxconn=128。 那你使用uwsgi启动的服务,单机最大支持并发数为100*(启动的uwsgi进程数)。 如果启动进程为4个,则最大并发只能支持400 ...
分类:
其他好文 时间:
2019-05-22 17:54:30
阅读次数:
132