一个仅仅部署在4台服务器上的服务,每秒向Database写入数据超过100万行数据,每分钟产生超过1G的数据.而每台服务器(8核12G)上CPU占用不到100%,load不超过5.这是怎么做到呢?下面将给你描述这个架构,它的核心是一个高效缓冲区设计,我们对它的要求是: 1,该缓存区要尽量简单 2,尽量避免生产者线程和消费者线程锁 3,尽量避免大量GC 缓冲 vs 性能瓶颈 提高硬盘写入IO的银弹无疑是批量顺序写,无论是在业界流行的分布式文件系统或数据,HBase,GFS和HDFS,还是以磁盘文件…
Springboot & Mybatis 构建restful 服务三 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务二 2 restful service 添加日志 1)新建 logback.xml文件(配置生成的日志文件的格式) src/main/resources/logback.xml   <?xml version="1.0" encoding="UTF-8"?>   <!-- 设…
原文地址:http://maoyidao.iteye.com/blog/1663193 一个仅仅部署在4台服务器上的服务,每秒向Database写入数据超过100万行数据,每分钟产生超过1G的数据.而每台服务器(8核12G)上CPU占用不到100%,load不超过5.这是怎么做到呢?下面将给你描述这个架构,它的核心是一个高效缓冲区设计,我们对它的要求是: 1,该缓存区要尽量简单 2,尽量避免生产者线程和消费者线程锁 3,尽量避免大量GC 缓冲 vs 性能瓶颈 提高硬盘写入IO的银弹无疑是批量顺序…
写在前面 ## 文章Dockerfile中涉及apt-get 等操作需更换镜像 在Dockerfile中添加下列 Dockerfile源码,见下面作者githubhttps://github.com/turnbullpress/dockerbook-code/blob/master/code/6 RUN rm -rf /etc/apt/sources.list ADD sources.list /etc/apt/ source.list 文件见下面链接  文件位置与Dockerfile文件在同一…
Springboot & Mybatis 构建restful 服务四 1 前置条件 成功执行完Springboot & Mybatis 构建restful 服务三 2 restful service 添加 Apache POI生成 Excel 文件 1)修改 POM.xml文件 添加 Apache POI 的依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-oo…
构建高性能服务(二)java高并发锁的3种实现 来源:http://www.xymyeah.com/?p=46   提高系统并发吞吐能力是构建高性能服务的重点和难点.通常review代码时看到synchronized是我都会想一想,这个地方可不可以优化.使用synchronized使得并发的线程变成顺序执行,对系统并发吞吐能力有极大影响,我的博文 http://maoyidao.iteye.com/blog/1149015 介绍了可以从理论上估算系统并发处理能力的方法. 那么对于必须使用sync…
Netty系列之Netty高性能之道 https://www.infoq.cn/article/netty-high-performance 李林锋 2014 年 5 月 29 日 话题:性能调优语言 & 开发架构   1. 背景 1.1. 惊人的性能数据 最近一个圈内朋友通过私信告诉我,通过使用 Netty4 + Thrift 压缩二进制编解码技术,他们实现了 10W TPS(1K 的复杂 POJO 对象)的跨节点远程服务调用.相比于传统基于 Java 序列化 +BIO(同步阻塞 IO)的通信…
今日要闻: Clarifai:可识别视频中物体 最近几年,得益于深度学习技术的发展,谷歌和Facebook等企业的研究人员在图形识别软件领域取得了重大突破.现在,一家名为Clarifai的创业公司则提供了一项新服务,利用深度学习技术来理解视频内容. 深度学习需要借助一个模拟"神经元"的网络来处理数据,并且利用实例数据对其进行训练.Clarifai的技术源自纽约大学的研究,该公司2013年在一项著名的图片内容识别软件竞赛中取得前五名. 今日英文: http://docs.oracle.c…
转:http://blog.csdn.net/nengyu/article/details/7591854 场景这里指的高性能高并发服务器是一个有状态的服务,可以理解成web或者socket服务器,每个业务在这个服务上执行后是有状态的.比如一次电信业务,设计用户请求资源分配,网络带宽分配,billing认证等.这些状态需要保留在服务器端,称为session.该系统的特点是session信息写入量大,更新访问频繁. 1,使用异步通信 异步通信显然可以更快的返回响应.从实际经验看,对高吞吐服务器更大…
设计概述 服务端通信组件的设计是一项非常严谨的工作,其中性能.伸缩性和稳定性是必须考虑的硬性质量指标,若要把组件设计为通用组件提供给多种已知或未知的上层应用使用,则设计的难度更会大大增加,通用性.可用性和灵活性必须考虑在内. 现以一个基于 IOCP 的通用异步 Windows Socket TCP 服务端组件为例子,讲述其设计与实现相关的问题,希望能引发大家的思考,对大家日后开展相关类似工作时有所帮助.关于通用性.可用性.Socket 模型选型以及接口模型的设计等问题已经在本座前段时间发表的<通…