- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 can‘t have 2 modules with the following key
can't have 2 modules with the following key
2023-02-27 15:25:53
886
1
转载 JVM性能调优
一、JVM内存模型及垃圾收集算法1.根据Java虚拟机规范,JVM将内存划分为:New(年轻代)Tenured(年老代)永久代(Perm)其中New和Tenured属于堆内存,堆内存会从JVM启动参数(-Xmx:3G)指定的内存中分配,Perm不属于堆内存,有虚拟机直接分配,但可以通过-XX:PermSize -XX:MaxPermSize 等参数调整其大小。年轻代(New):年轻代用来存放JVM刚分配的Java对象年老代(Tenured):年轻代中经过垃圾回收没有回收掉的对象将被Copy到.
2021-10-06 13:57:14
655
转载 前端必知必会之 JS 单线程与异步
已知,JavaScript 是单线程的,天生异步,适合 IO 密集型,不适合 CPU 密集型,但是,为什么是异步的喃,异步由何而来的喃,我们将在这里逐渐讨论实现。一、进程与线程浏览器是多进程的它主要包括以下进程:Browser 进程:浏览器的主进程,唯一,负责创建和销毁其它进程、网络资源的下载与管理、浏览器界面的展示、前进后退等。GPU 进程:用于 3D 绘制等,最多一个。第三方插件进程:每种类型的插件对应一个进程,仅当使用该插件时才创建。浏览器渲染进程(浏览器内核):内部是多线程的,每打
2021-05-13 17:18:00
290
转载 Maven 的41种骨架功能介绍
Maven 的41种骨架:…>mvn archetype:generate1: internal -> appfuse-basic-jsf (创建一个基于Hibernate,Spring和JSF的Web应用程序的原型)2: internal -> appfuse-basic-spring (创建一个基于Hibernate,Spring和Spring MVC的Web应用程序的原型)3: internal -> appfuse-basic-struts (创建一个基于Hibern
2021-05-06 11:40:41
128
转载 那些年我们用过的流计算框架
数据时代,从数据中获取业务需要的信息才能创造价值,这类工作就需要计算框架来完成。传统的数据处理流程中,总是先收集数据,然后将数据放到DB中。当人们需要的时候通过DB对数据做query,得到答案或进行相关的处理。这样看起来虽然非常合理,但是结果却非常紧凑,尤其是在一些实时搜索应用环境中的某些具体问题,类似于MapReduce方式的离线处理并不能很好地解决。基于此,一种新的数据计算结构—流计算方式出现了,它可以很好地对大规模流动数据在不断变化的运动过程中实时地进行分析,捕捉到可能有用的信息,并把结果发送到下一
2021-05-06 11:02:45
953
原创 java版 简易斗地主(五)
Rule类最重要的一个类了.1是判断出牌是否合法,同时 判断是什么牌型2对比 两幅牌的大小public class Rule { public static int compare(ThrowLog d1, ArrayList<ThrowLog> all) { try{ if(all.size()==0) { return 1; } ThrowLog t =
2021-03-28 12:03:24
85
原创 java版 简易斗地主(四)
PokerGroup类斗地主的所有牌型的定义类public enum PokerGroup { Unvalid("未知", 0), Single("单", 1), Duad("对", 1), Three("三", 1), StraightFlush("顺", 1), StraightFlush2("对顺", 1), StraightFlush3("飞机", 1), StraightFlush3WithSingle("飞机带单", 1),
2021-03-28 11:59:01
83
原创 java版 简易斗地主(三)
Loop类为每一次出牌循环,从第一个玩家开始,一直到没有人能大过,此次出牌循环结束比较重要的一个类.有点起到了 裁判的作用.public class Loop { public Loop(Integer index) { this.index = index; } private Integer index; private ArrayList<ThrowLog> _logs = new ArrayList<>();
2021-03-28 11:54:39
89
原创 java版 简易斗地主(二)
Room类 主入口sort为洗牌顺序,主要是为了方便测试bug,可以重现牌局landowner 是 0,1,2 三个玩家 谁为地主.public class Room { public static void main(String[] args) { ArrayList<Player> player = new ArrayList<Player>(); player.add(new Player("P1")); pla
2021-03-28 11:47:54
80
原创 java版 简易斗地主(一)
前几天看了别人写的斗地主代码,突然也想自己写一个.还没有仔细测试过,有时候会出bug异常结束. V_V先上结果:最开始的输出 如下:==================P3(地主)的牌为: 大王 , 红桃2 , 方片2 , 方片A , 梅花A , 方片Q , 黑桃J , 黑桃10 , 梅花9 , 红桃8 , 黑桃8 , 黑桃7 , 方片6 , 红桃6 , 红桃5 , 方片5 , 黑桃4 , 梅花3 , 黑桃3 , 红
2021-03-24 14:17:23
82
原创 WebRTC 用屏幕分享录制一段视频
前一章节了解了屏幕分享的API,感觉跟我们常用的“屏幕共享”好像。那么可不可以用此进行一个屏幕录制呢?“纸上得来终觉浅,觉知此事要躬行。”看着挺简单的一个东西,没有落实都算说大话。首先画上三个按钮:<button @click=“start” :disabled=“disabled.start”>开始录制<button @click=“stop” :disabled=“disabled.stop”>结束录制<button @click=“download” :dis
2021-03-18 14:10:35
170
转载 Docker 实战总结(非常全面),赶紧收藏!
Docker简介Docker是一个开源的应用容器引擎,开发者可以打包自己的应用到容器里面,然后迁移到其他机器的docker应用中,可以实现快速部署。简单的理解,docker就是一个软件集装箱化平台,就像船只、火车、卡车运输集装箱而不论其内部的货物一样,软件容器充当软件部署的标准单元,其中可以包含不同的代码和依赖项。按照这种方式容器化软件,开发人员和 IT 专业人员只需进行极少修改或不修改,即可将其部署到不同的环境,如果出现的故障,也可以通过镜像,快速恢复服务。imageDocker优势1.特性优
2021-01-26 10:43:32
309
转载 Docker 的部署方式
Docker 的部署方式在使用 docker run 命令启动 Docker 容器时,如果需要进行端口映射、目录挂载、网络信息等配置,整条命令将变得非常长,并且由于是一条 shell 命令,修改和复用也不方便。我们在大规模部署容器的时候不可能手动去输入众多的命令,所以需要一些工具来辅助我们实现 docker run 命令的编写,同时实现简单快捷的大规模部署。docker-compose 部署docker-compose 是一个读取特定格式的 yaml 文件并将其转换为 docker run 命令的工具
2021-01-26 09:20:24
218
转载 Linux find命令根据时间筛选出文件进行删除
需求:删除 /home/file/ 目录下10天之前生成的txt类型的文件find /home/file/ -ctime +10 -name “*.txt” -print | xargs rm -f或者find /home/file/ -ctime +10 -name “*.txt” -delete经过测试在文件比较多的情况下 第二条命令比第一条速度更快。//时间条件-amin n: 查找n分钟以前被访问过的所有文件。-atime n: 查找n天以前被访问过的所有文件。-cmin n:
2021-01-21 13:38:31
880
转载 基于Qt、FFMpeg的音视频播放器设计一
前言:整个项目的源代码 https://download.csdn.net/download/hfuu1504011020/10672140最近刚完成基于Qt、FFMpeg的音视频播放器相关C++程序,实现了一个音视频播放器的全部功能,其中以模块为主,每一个模块,分为几个小模块,总结每个小模块,再整合起来,过程比较好理解,因为本人也是刚学习阶段,对于这样方式的总结,个人感觉还是比较容易理解的,过程也比较清晰,只是内容有点多。中间涉及的过程主要有:1、 开发环境准备2、FFMPEG视频处理原理以及实现
2021-01-12 09:38:00
391
转载 mysql各个集群方案的优劣
集群的好处• 高可用性:故障检测及迁移,多节点备份。• 可伸缩性:新增数据库节点便利,方便扩容。• 负载均衡:切换某服务访问某节点,分摊单个节点的数据库压力。集群要考虑的风险• 网络分裂:群集还可能由于网络故障而拆分为多个部分,每部分内的节点相互连接,但各部分之间的节点失去连接。• 脑裂:导致数据库节点彼此独立运行的集群故障称为“脑裂”。这种情况可能导致数据不一致,并且无法修复,例如当两个数据库节点独立更新同一表上的同一行时。文章目录一,mysql原厂出品1,MySQL Replicati
2021-01-06 13:35:13
253
转载 MySQL 行锁 表锁机制
MySQL 行锁 表锁机制MySQL 表锁和行锁机制行锁变表锁,是福还是坑?如果你不清楚MySQL加锁的原理,你会被它整的很惨!不知坑在何方?没事,我来给你们标记几个坑。遇到了可别乱踩。通过本章内容,带你学习MySQL的行锁,表锁,两种锁的优缺点,行锁变表锁的原因,以及开发中需要注意的事项。还在等啥?经验等你来拿!MySQL的存储引擎是从MyISAM到InnoDB,锁从表锁到行锁。后者的出现从某种程度上是弥补前者的不足。比如:MyISAM不支持事务,InnoDB支持事务。表锁虽然开销小,锁表快,但高并
2021-01-06 09:49:49
109
转载 Nginx支持WebSocket反向代理-学习小结
WebSocket是目前比较成熟的技术了,WebSocket协议为创建客户端和服务器端需要实时双向通讯的webapp提供了一个选择。其为HTML5的一部分,WebSocket相较于原来开发这类app的方法来说,其能使开发更加地简单。大部分现在的浏览器都支持WebSocket,比如Firefox,IE,Chrome,Safari,Opera,并且越来越多的服务器框架现在也同样支持WebSocket。在实际的生产环境中,要求多个WebSocket服务器必须具有高性能和高可用,那么WebSocket协议就需要一
2021-01-05 16:22:31
143
转载 如何优化MySQL insert性能
对于一些数据量较大的系统,面临的问题除了是查询效率低下,还有一个很重要的问题就是插入时间长。我们就有一个业务系统,每天的数据导入需要4-5个钟。这种费时的操作其实是很有风险的,假设程序出了问题,想重跑操作那是一件痛苦的事情。因此,提高大数据量系统的MySQL insert效率是很有必要的。经过对MySQL的测试,发现一些可以提高insert效率的方法,供大家参考参考。一条SQL语句插入多条数据。常用的插入语句如:INSERT INTO insert_table (datetime, uid, c
2021-01-05 14:01:02
340
1
转载 mysql每秒最多能插入多少条数据 ? 死磕性能压测
原创 爱吃大肉包 工作日志 2016/10/14 17:27https://my.oschina.net/u/867417/blog/758690前段时间搞优化,最后瓶颈发现都在数据库单点上。 问DBA,给我的写入答案是在1W(机械硬盘)左右。联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘)但这东西感觉从来没证实过,故一时兴起,弄台虚拟机压测起来。想搞清下面的问题:1,mysql支撑多少连接数?2,写入瓶颈到底是多少?3,求QPS畅想:足够的CPU
2021-01-05 13:33:13
1391
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人