- 博客(13)
- 资源 (6)
- 问答 (1)
- 收藏
- 关注
原创 JAVA 8 并发增强(1) 多线程修改某个计数器的方式
Q:如何正确的并发修改一个AtomicLong的值?/*不同线程检测最大值*/AtomicLong largest = new AtomicLong();long obsvValue = 0;/*错误的方式,此更新不是原子性的*/largest.set(Math.max(largest.get(), obsvValue));/* 正确的方式,这种方式比锁快 */long
2016-07-29 10:00:02 2226
原创 JVM参数,启动jar 包以及 启动tomcat的 JVM参数设置
启动示例public class TestJVM { public static void main(String[] args) { long maxM = Runtime.getRuntime().maxMemory(); long totalM = Runtime.getRuntime().totalMemory(); long usedM = Runtime
2016-07-27 15:35:33 16364
原创 服务器实时通知客户端方案,服务器发送/推送事件方案(1)websocket
My WebSocket Welcome Send Close var websocket = null; //判断当前浏览器是否支持WebSocket if ('WebSocket' in window) { websocket = new WebSocket("ws://localhost:8084/websocket"); } else {
2016-07-12 10:56:15 4695 2
原创 maven tomcat8 远程部署(支持tomcat7)
①修改tomcat的conf文件夹下的tomcat_user.xml ②启动tomcat③修改pom.xml的org.apache.maven.pluginsmaven-compiler-plugin3.5.1org.apache.tomcat.maventomcat7-maven-plugin2.2
2016-07-31 10:11:25 6834
原创 tomcat7, tomcat8的进入manager, tomcat_user.xm配,以及如何配置远程访问manager
要使用,localhost:8080/manager 需要配置tomcat_user.xml以下注释打开后依然不可以 " roles="tomcat"/> " roles="tomcat,role1"/> " roles="role1"/>-->修改成以下重启即可
2016-07-30 10:09:19 17461 4
原创 spring boot(8) 配置外部tomcat(2) dependencyManagement的方式
①修改POMwar1.3.5.RELEASEUTF-81.8org.springframework.bootspring-boot-dependencies${spring-boot.version}pomimport②修改启动类,继承SpringBootServletInitializerpublic class
2016-07-29 17:24:47 2031
原创 spring boot(7) 配置外部tomcat(1)
一,POM配置为打成war包war二,打包去掉内嵌tomcatorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-tomcatorg.springframework.bootspring-boo
2016-07-29 09:57:07 3370
原创 关注程序性能(1)jconsole
一,对jdk1.8.0_91/jre/lib/management下面的jmxremote.password.template改名为jmxremote.password 文件,打开注释如下monitorRole QEDcontrolRole R&D修改此文件为只读,chmod 0400 jmxremote.password二,启动java程序 XXX
2016-07-27 15:59:35 348
原创 mysql字符串不支持emoj表情的处理方法
一,修改数据库支持utf8mb4 修改my.cnf如下[client]default-character-set=utf8mb4[mysql]default-character-set=utf8mb4[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockuser=mysql# Disabling sym
2016-07-18 18:50:02 1245
原创 JVM 配置示例
-Xms8000m -Xmx8000m -Xmn6000m -Xss256k -XX:PermSize=64m -XX:MaxTenuringThreshold=20 -XX:+CMSScavengeBeforeRemark -XX:CMSInitiatingOccupancyFraction=80 -XX:SurvivorRatio=6 -XX:+UseConcMarkSweepGC -XX:P
2016-07-16 17:45:37 280
原创 mysql replace into,insert into ... on duplicate key
首先厘清,不存在则插入,不存在则更改的情况两种选择①REPLACE INTO t_score (NO,score)VALUES ('a','100') ;要保证no是唯一主键,这个语句,如果是不存在插入式,mysql 返回受影响行数为1,如果是存在则更新,则返回受影响行数为2;如果这个表里有个自增ID的情况,那么存在则更新的时候自增ID会每次增加1,但是存在则更新会使自增ID增加2。即使每次执
2016-07-15 15:04:30 1029
原创 获取客户端访问真正的IP地址
可以获取真正的IP public static String getRealIpAddr(HttpServletRequest req) { String ip = req.getHeader("x-forwarded-for"); if(ip == null || ip.length() == 0 ||"unknown".equalsIgnoreCase(ip)) {
2016-07-10 00:35:38 4812
原创 秒杀活动,抢号
一,使用mysql的乐观锁,会造成锁表表属性, id, code,no,usernoUPDATE t_code SET userno = ?, date = ? WHERE userno is null limit 1二,使用ConcurrentLinkedQueue queue等数据结构程序启动的时候加载出所有的有效激活码,众多用户来抢的时候,用queue.po
2016-07-06 11:10:32 1112
C程序设计语言(第2版·新版).rar+C程序设计语言(第2版·新版)习题解答.rar
2010-03-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人