- 博客(19)
- 资源 (11)
- 收藏
- 关注
转载 java读取计算机CPU、内存等信息(Sigar使用)
Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件。它用来从许多平台收集系统和处理信息. 这些平台包括:Linux, Windows, Solaris, AIX, HP-UX, FreeBSD and Mac OSX.Sigar有C,C#,Java和Perl API,java版的API为sigar.jar sigar.jar的底层是用C语言编写的,它通过本地方法...
2018-06-29 18:31:59 1085
转载 Java 编程之美:并发编程
借用 Java 并发编程实践中的话,编写正确的程序并不容易,而编写正常的并发程序就更难了!相比于顺序执行的情况,多线程的线程安全问题是微妙而且出乎意料的,因为在没有进行适当同步的情况下多线程中各个操作的顺序是不可预期的。并发编程相比 Java 中其他知识点学习起来门槛相对较高,学习起来比较费劲,从而导致很多人望而却步;而无论是职场面试和高并发高流量的系统的实现却都还离不开并发编程,从而导致能够真正...
2018-06-29 11:11:40 728
转载 Spring MVC是逐步简化Servlet的编程的
Servlet和JSP是开发java Web应用程序的两种基本技术,Spring MVC是Spring框架中用于Web应用程序开发的一个模块,能够清晰的了解到从Servlet到Spring MVC开发技术之间逐步简化的过程对于深刻理解Spring MVC在Web应用程序开发中的作用具有很大的帮助。我们会从项目的目录结构来介绍这个简化的过程:一、 在Servlet中 在应用程序目录下是WEB-...
2018-06-27 10:28:48 351
转载 Netty系列之Netty百万级推送服务设计要点
1. 背景1.1. 话题来源最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我,咨询推送服务相关的问题。问题五花八门,在帮助大家答疑解惑的过程中,我也对问题进行了总结,大概可以归纳为如下几类:Netty是否可以做推送服务器?如果使用Netty开发推送服务,一个服务器最多可以支撑多少个客户端?使用Netty开发推送服务遇到的各种技术问题。由于咨询者众多,关注点也比较集中,我希望通过本文...
2018-06-26 20:19:11 272
转载 Netty实现服务器推Push(Android推送)
简介消息推送一般的思路就是: 1.轮询(Pull)客户端定时的去询问服务器是否有新消息需要下发;确点很明显Android后台不停的访问网络费电还浪费流量。2.推送(Push)服务端有新消息立即发送给客户端,这就没有时间的延迟,消息及时到达。当时需求过来之后就首先考虑的这两个,开发的角度Pull实现起来简单省事,但从用户来说省电和省流量才是主要的,所以最后选用Push。客户端与服务端使用长连接,客户...
2018-06-26 20:09:17 848
转载 Mybatis 批量插入引发的血案
故事今天下午公司技术分享,一个伙伴提到他踩过坑:mybatis批量插入时动态sql允许的最大参数数量是2100个。即下面代码中“#”的数量。<insert id="batchInsert" parameterType="list"> insert into Adv_permeability values <foreach collection="permeabilityL...
2018-06-21 14:22:51 4026 1
原创 java代码质量管理
主要对下面的七块进行分析编码格式规范:codeStyle和CheckStyle代码重复:PMD 的 CPD代码覆盖率:Coverlipse或者Emma依赖项分析:JDepend复杂度监控:MetricsJava模拟技术:EasyMock、PowerMock代码评审和重构:Jupiter...
2018-06-20 10:54:30 1409
转载 springcloud与dubbo的性能对比
长期使用dubbo的团队中推行springcloud确实是个难题,巨大理由之一就是rpc调用效率远远高于http,故此做一个相关性能测试,所用到的dubbo与spring系均采用官方最新版(dubbo 2.5.7 、springboot 1.5.9 、springcloud edgware)。springcloud测试代码地址 https://github.com/liuchengts/sprin...
2018-06-19 10:34:26 5567 2
转载 netty5 HTTP协议栈浅析与实践
一、说在前面的话前段时间,工作上需要做一个针对视频质量的统计分析系统,各端(PC端、移动端和 WEB端)将视频质量数据放在一个 HTTP 请求中上报到服务器,服务器对数据进行解析、分拣后从不同的维度做实时和离线分析。(ps:这种活儿本该由统计部门去做的,但由于各种原因落在了我头上,具体原因略过不讲……)先用个“概念图”来描绘下整个系统的架构: 嗯,这个是真正的“概念图”,因为我已经把大部分细节都...
2018-06-15 11:25:26 847
转载 JVM可生产的最大线程数 Thread 数量
最近想测试下Openfire下的最大并发数,需要开大量线程来模拟客户端。对于一个JVM实例到底能开多少个线程一直心存疑惑,所以打算实际测试下,简单google了把,找到影响线程数量的因素有下面几个: -Xmsintial java heap size-Xmxmaximum java heap size-Xssthe stack size for each thread系统限制系统最大可开线程数测试...
2018-06-15 10:24:11 3699
转载 mysql数据库死锁的产生原因及解决办法
这篇文章主要介绍了mysql数据库锁的产生原因及解决办法,需要的朋友可以参考下 数据库和操作系统一样,是一个多用户使用的共享资源。当多个用户并发地存取数据 时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。加锁是实现数据库并 发控制的一个非常重要的技术。在实际应用中经常会遇到的与锁相关的异常情况,当两个事务需要一组有冲突的...
2018-06-14 18:34:00 189
转载 高性能网络服务器编程:为什么linux下epoll是最好,Netty要比NIO.2好?
基本的IO编程过程(包括网络IO和文件IO)是,打开文件描述符(windows是handler,java是stream或channel),多路捕获(Multiplexe,即select和poll和epoll)IO可读写的状态,而后可以读写的文件描述符进行IO读写,由于IO设备速度和CPU内存比速度会慢,为了更好的利用CPU和内存,会开多线程,每个线程读写一个文件描述符。 但C10K问题,让我们...
2018-06-14 13:54:54 648
转载 Spring Boot单元测试(Mock)
Mock单元测试的重要性就不多说了,我这边的工程一般都是Spring Boot+Mybatis(详情可参看《Spring boot+MyBatis+PageHelper+JSON》),现在写一下Spring Boot下怎么测试Controller、Service。Controller测试本文就简单一点,写一个Hello接口。ControllerHTTP请求测试:既然是测试Controller接口,...
2018-06-04 20:52:17 4650
转载 koa2从起步到填坑
出于兴趣最近开始研究koa2,由于之前有过一些express经验,以为koa还是很好上手的,但是用起来发现还是有些地方容易懵逼,因此整理此文,希望能够帮助到一些新人。如果你不懂javascript,建议你先去撸一遍红宝书javascript高级程序设计如果你不熟悉ES6,建议你先去撸一遍阮一峰老师的ECMAScript 6入门因为我也是新人,我只是整理了我的学习经历,如何填平踩到的坑。如果有读者发...
2018-06-04 09:02:52 2170
原创 kafka 高吞吐量性能揭秘
kafka作为时下最流行的开源消息系统,被广泛地应用在数据缓冲、异步通信、汇集日志、系统解耦等方面。相比较于RocketMQ等其他常见消息系统,Kafka在保障了大部分功能特性的同时,还提供了超一流的读写性能。本文将针对Kafka性能方面进行简单分析,首先简单介绍一下Kafka的架构和涉及到的名词:1. Topic:用于划分Message的逻辑概念,一个Topic可以分布在多个Broker上。2....
2018-06-03 23:19:22 14067 1
转载 Koa 框架教程
Koa 就是一种简单好用的 Web 框架。它的特点是优雅、简洁、表达力强、自由度高。本身代码只有1000多行,所有功能都通过插件实现,很符合 Unix 哲学。本文从零开始,循序渐进,教会你如何使用 Koa 写出自己的 Web 应用。每一步都有简洁易懂的示例,希望让大家一看就懂。零、准备首先,检查 Node 版本。$ node -vv8.0.0Koa 必须使用 7.6 以上的版本。如果你的版本...
2018-06-03 07:04:38 1457
转载 前后端分离-mock接口的功与过
场景 1)接口尚未开发完成前后端项目中,后端接口开发完成之前,接口联调;依赖的上游项目的接口尚未开发完成,需要接口联调测试;2) 接口返回不满足目前需求目前的接口虽然已实现,但个别字段/返回不满足目前的测试要求(比如,一个字段有3中状态,但接口只能返回2种)接口mock的几个阶段阶段一:直接修改对应的DB数据,使其对应的接口返回满足要求适用场景:仅仅使用接口已存在,但不满足要求的情况下;优点...
2018-06-03 06:49:55 753
转载 前后端分离之让前端开发脱离接口束缚(mock)
重构完成,再书写交互时遇到后台接口尚未完成,无法得到接口返回的测试数据,但是我们又需要一些数据来测试我们的前端功能的时候,往往会在这种情况下卡壳;最常见的办法就是:等~~~,等后台哥们完成接口再继续开发,似乎有了一个正当划水的理由。但是这样一点也不符合咱们早完事早收工的工作理念,所以呢,今天学习的关于前端模拟AJAX的三种办法,用于应对以上情况,加快开发效率;解决办法: 1、mockjax.js...
2018-06-03 06:48:04 994
转载 使用mockserver来进行http接口mock
前言进行单元测试时,必须要mock掉第三方的依赖调用,而mockserver提供了足够的api来支持这种http的mock,现在简单介绍如何使用mockserver进行http接口mock。依赖mockserver依赖<dependency><groupId>org.mock-server</groupId><artifactId>mockserve...
2018-06-03 06:37:08 5336
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人