自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(107)
  • 资源 (11)
  • 收藏
  • 关注

转载 字符编码详解

每一个程序员都不可避免的遇到字符编码的问题,特别是做Web开发的程序员,“乱码问题”一直是让人头疼的问题,也许您已经很少遇到“乱码”问题,然而,对解决乱码的方法的内在原理,您是否明白?本人作为一个程序员,在字符编码方面同样遇到不少问题,而且一直对各种编码懵懵懂懂、不清不楚;在工作中也曾经遇到一个很烦人的编码问题。这两天在网上收集了大量编码方面的资料,对字符编码算是理解的比较清楚了。下面把我认为比较

2015-06-08 11:28:51 616

转载 搜狗商业平台Java技术实践

Java自1995年问世以来,已历经20多年岁月。20年来,IT技术风起云涌,Java始终以其可移植性、跨平台性、生态系统完备性等特点成为最主流的开发语言之一。事实上,Java无处不在,已经渗入到大家的日常生活中,从你的每一次购物到每一笔支付,都有Java技术的身影,国内外的主流网站大部分都是由Java技术支撑。搜狗商业平台负责搜狗广告业务,涵盖搜索、网盟、无线、品牌等业务线,面向几十万广告主

2015-05-27 13:06:44 702

转载 高可用可伸缩架构实用经验谈

移动互联网、云计算和大数据的成熟和发展,让更多的好想法得以在很短的时间内实现为产品。此时,如果用户需求抓得准,用户数量将很可能获得爆发式增长,而不需要像以往一样需要精心运营几年的时间。然而用户数量的快速增长(尤其是短时间内的爆发式增长),通常会让应用开发者有些吃不消,不得不面临一些严峻的技术挑战:如何避免因为单台机器当机导致服务不可用;如何避免在服务容量不足时,用户体验下降,等等。在系统构建之初就

2015-05-27 12:59:22 562

转载 Java NIO通信框架在电信领域的实践

1. 华为电信软件技术架构演进1.1. 电信软件从广义上看电信软件的范围非常广,细分实际可以分为两大类:系统软件和业务应用软件。系统软件包括路由器底层的信令机软件、手机操作系统等,业务应用软件主要包括客户关系管理CRM、网上营业厅、融合计费OCS和各类消息网关,例如短信网关、彩信网关等。本文重点介绍电信业务应用软件的技术变迁历史,以及华为电信软件架构演进和Java NIO框架在技术

2015-05-27 12:46:57 1287

转载 Redis应用场景

1.  MySql+Memcached架构的问题   实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题:  1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。  2.Memcach

2015-05-27 11:46:18 500

转载 http connection

概述本部分主要讨论HTTP连接管理及其相关话题。在此之前,需要先对TCP连接及其性能相关问题进行研究。简单原因如下:HTTP连接实际上就是TCP连接及其使用规则就HTTP时延而言,TCP网络时延是主要部分此外,由于HTTP连接内容较多,本篇文章篇幅有限,下一篇文章将继续深入研究关于持久化连接和管道化连接内容。TCP协议相关浏览器与服务器交互过程图解 

2015-05-23 11:25:14 1323

转载 浅谈JS DDoS攻击原理与防御

分布式拒绝服务攻击(DDoS)攻击是一种针对网站发起的最古老最普遍的攻击。Nick Sullivan是网站加速和安全服务提供商CloudFlare的一名系统工程师。近日,他撰文介绍了攻击者如何利用恶意网站、服务器劫持和中间人攻击发起DDoS攻击,并说明了如何使用HTTPS以及即将到来的名为“子资源一致性(Subresource Integrity,简称SRI)”的Web新技术保护网站免受攻击。现代网

2015-05-19 19:22:44 512

转载 高性能服务器架构

任何一行都有自己的军规, 我想这篇著名的文章就是游戏服务器程序员的军规. 也许你认为游戏服务器程序员日常并不涉及这样底层的实现, 而只是去完成策划提出的需求, 我觉得也有道理, 毕竟这些是我们的工作, 下面的译文就不太适合你. 但是对于想改进现有系统, 在服务器方面给予更好的技术支持, 那么你在开始工作之前必须了解一些禁忌, 并且给出了一些解决方向上的真知灼见. 把它发在这里, 供随时复习. 下面给

2015-05-18 10:03:19 498

转载 高性能服务端漫谈

一、背景进入多核时代已经很久了,大数据概念也吵得沸沸扬扬,不管你喜欢不喜欢,不管你遇到没遇到,big-data或bigger-data都必须正视.处理大数据,基本都离不开分布式计算和分布式存储,这其中以hadoop最为使用广泛和经典。分布式系统,就离不开计算系统、网络系统、文件系统和数据库系统。这么多系统,之间又是如何协作的呢? 通讯过程又是如何保障高性能的呢?1.单处理器 在以前的单核心cpu

2015-05-18 10:00:00 452

转载 java中的线程通信

原文链接 作者:Jakob Jenkov 译者:杜建雄 校对:方腾飞 java中线程通信的目标是使线程间能够互相发送信号。另一方面,线程通信使线程能够等待其他线程的信号。 例如,线程B可以等待线程A的一个信号,这个信号会通知线程B数据已经准备好了。 1、通过共享对象通信 java学习中线程间发送信号的一个简单方式是在共享对象的变量里设置信号值。线程A在一个同步块里设置boolean型成员

2015-05-15 10:25:19 417

转载 JVM研究

1 JVM 简介JVM是我们Javaer的最基本功底了,刚开始学Java的时候,一般都是从“Hello World”开始的,然后会写个复杂点class,然后再找一些开源框架,比如Spring,Hibernate等等,再然后就开发企业级的应用,比如网站、企业内部应用、实时交易系统等等,直到某一天突然发现做的系统咋就这么慢呢,而且时不时还来个内存溢出什么的,今天是交易系统报了StackOverfl

2015-05-14 20:49:48 443

转载 实战低成本服务器搭建千万级数据采集系统

有这样一个采集系统的需求,达成指标: 需要采集 30万关键词的数据 、微博必须在 一个小时采集到、覆盖四大微博(新浪微博、腾讯微博、网易微博、搜狐微博)。为了节约客户成本,硬件为 普通服务器:E5200 双核 2.5G cpu, 4 G DDR3 1333内存,硬盘 500G SATA 7200转硬盘。数据库为mysql。在这样的条件下我们能否实现这个系统目标?当然如果有更好的硬件不是这个

2015-05-12 10:19:15 491

转载 TCP协议缺陷不完全记录

零。前言TCP自从1974年被发明出来之后,历经30多年发展,目前成为最重要的互联网基础协议。有线网络环境下,TCP表现的如虎添翼,但在移动互联网和物联网环境下,稍微表现得略有不足。移动互联网突出特性不稳定:信号不稳定,网络连接不稳定。虽然目前发展到4G,手机网络带宽有所增强,但因其流动特性,信号也不是那么稳定:坐长途公交车,或搭乘城铁时,或周边上网密集时等环境,现实环境很复杂。以下讨

2015-05-12 10:14:14 1020

转载 centos下搭建nginx+tomcat实现集群负载与session复制

第一章 测试环境说明 1.1 系统说明 系统均选用最小化安装的centos 5.7 1.2 软件说明 nginx-0.8.55 pcre-8.13 apache-tomcat-6.0.35  jdk-6u31-linux-x64 nginx-upstream-jvm-route-0.1 1.3 规划说明 客户端通过访问nginx做的负载均衡层去访问后端的we

2015-05-12 10:08:33 503

转载 apache与tomcat负载集群的3种方法

apache与tomcat负载集群集成方法有3种jk、jk_proxy、http_proxy本次集成使用的软件版本:apache:httpd-2.2.17-win32-x86-no_ssl.msitomcat:apache-tomcat-6.0.20.zipjdk:jdk-6u14-windows-i586.exe本次测试是1个apache集成两个tomcat。安装

2015-05-12 10:05:30 409

转载 apache与tomcat负载集群的3种方法

集群tomcat主要是解决SESSION共享的问题花了两天时间学习apache与tomcat的集成方法,现在把学习成果记录下来。 apache与tomcat负载集群集成方法有3种jk、jk_proxy、http_proxy 本次集成使用的软件版本: Code highlighting produced by Actipro CodeHighlighter (freeware) h

2015-05-12 10:04:56 645

转载 Apache+Tomcat+Memcached共享Session的构架设计

网站集群部署解决方案一、       方案目标实现互动留言系统、后台发布系统的高可用性,有效解决高并发量对单台应用服务器的冲击,确保应用服务器单点故障不影响系统正常运行。二、       部署架构采取Tomcat集群的部署方式,Apache通过proxy_module代理方式对用户的请求进行负载均衡,转发至tomcat集群中的某一实例进行处理,tomcat集群之间通过Memcach

2015-05-12 10:03:47 434

转载 nginx+tomcat+memcached (msm)实现 session同步复制

tomcat + memcached + nginx 实现session共享     这里重点强调如何实现linux服务器上 服务器session共享,软件安装不再赘述。 首先我们需要对 cookie 和session的工作机制非常了解,如果不了解其中的原理,就算配置成功,也毫无意义。换了工作换了环境,重新配置起来 仍然需要重头来过,事倍功半。     cookie是怎样工作的

2015-05-12 09:59:39 2955

转载 Web应用上线之前程序员应该了解的技术细节

【伯乐在线注】:《Web 应用上线前,程序员应考虑哪些技术细节呢?》这是 StackExchange 上面的一个经典问题贴。最赞回复有 2200+ 顶,虽然大多数人可能都听过其中大部分内容,但应该会有你没有深入了解的内容。一起来看看。问题Web 应用上线前,程序员应考虑哪些技术细节呢? 如果 Jeff Atwood 忘记把 HttpOnly cookies、sitemaps 和 c

2015-05-11 10:42:05 619

转载 java中线程队列BlockingQueue的用法

原文地址:http://blog.itpub.net/143526/viewspace-1060365/在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用

2015-05-08 09:36:26 434

转载 序列化和反序列化

简介文章作者服务于美团推荐与个性化组,该组致力于为美团用户提供每天billion级别的高质量个性化推荐以及排序服务。从Terabyte级别的用户行为数据,到Gigabyte级别的Deal/Poi数据;从对实时性要求毫秒以内的用户实时地理位置数据,到定期后台job数据,推荐与重排序系统需要多种类型的数据服务。推荐与重排序系统客户包括各种内部服务、美团客户端、美团网站。为了提供高质量的数据服务

2015-05-08 09:31:43 407

转载 关于垃圾回收被误解的7件事

对Java垃圾回收最大的误解是什么?它实际又是什么样的呢? 当 我还是小孩的时候,父母常说如果你不好好学习,就只能去扫大街了。但他们不知道的是,清理垃圾实际上是很棒的一件事。可能这也是即使在Java的世界中, 同样有很多开发者对GC算法产生误解的原因——包括它们怎样工作、GC是如何影响程序运行和你能对它做些什么。因此我们找到了Java性能调优专家Haim Yadid,并把名为J

2015-04-28 09:38:58 388

转载 面向服务体系和遗留系统

企业系统已经从单片孤岛(monolithic silos)快速发展为使用机制灵活、面向服务的分布式应用系统。为了跟上这一趋势,IT组织必须近乎实时地调整他们的遗留系统,以面对商业变化的挑战,这一机会稍纵即逝。面向服务的体系(SOAs)已经演进成可灵活进行操作,并能连接业务进程和底层系统。Nicolas Serrano、Josune Hernantes和Gorka Gallardo提供了当前SOA技

2015-04-28 09:24:47 796

转载 10步了解产品经理要懂的应用架构

互联网发展至今,从个人网站到大型购物网站,不同类型的网站导致了需求架构的不同。每个网站都有其对应的技术架构。不同的层级之间架构也不尽相同。设计产品的时候,哪些架构是产品经理需要了解的呢?我们一起来看看。

2015-04-27 14:35:38 704

转载 汇报工作是技术活,其中艺术你可知道?

团队小的时候,三份汇报七分工作,因为领导天天看着你,但是团队大的时候,你的工作成果全指望着在领导眼睛里有一个好的成果展现,这个时候汇报就是一个技术活儿。  向领导汇报工作是党政机关干部重要的日常业务。汇报得体,事半功倍;汇报不当,事倍功半。  如何增强汇报工作的艺术性,既完成工作,又赢得领导对自己能力的认可呢?笔者根据经验,认为应做好以下三点:  一、言简意赅概括主旨,让领导知晓“是什

2015-04-27 14:31:06 390

转载 读写模型整理笔记

读模型1、主键读最常见的读模型,说是主键,其实也包括其它索引键,或者联合主键。常见实现:hash,时间复杂度可以接近O(1);B树或变种:时间复杂度接近O(log(n))。关于B树和变种:B树(B-树):本质上是二叉查找树的升级版,变成了平衡的N叉查找树,这个N的范围根据磁盘一次读取的块大小来调整,这样复杂度log n的底数就从2变成一个更大的数,减少了树的高度。除此以外,还有

2015-04-27 14:15:54 589

转载 Kafka设计解析(二):Kafka High Availability (上)

Kafka在0.8以前的版本中,并不提供High Availablity机制,一旦一个或多个Broker宕机,则宕机期间其上所有Partition都无法继续提供服务。若该Broker永远不能再恢复,亦或磁盘故障,则其上数据将丢失。而Kafka的设计目标之一即是提供数据持久化,同时对于分布式系统来说,尤其当集群规模上升到一定程度后,一台或者多台机器宕机的可能性大大提高,对Failover要求非常高。

2015-04-27 14:11:37 517

转载 Kafka剖析(一):Kafka背景及架构介绍

Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用。目前越来越多的开源分布式处理系统如Cloudera、Apache Storm、Spark都支持与Kafka集成。InfoQ一直在紧密关注Kafka的应用以及发展,“Kafka剖析”专栏将会从架构设计、实现、应用场景、性能等方面深度解析Kafka。背景介绍Kafka创建背景

2015-04-27 14:09:34 437

转载 Java字节码忍者禁术

Java语言本身是由Java语言规格说明(JLS)所定义的,而Java虚拟机的可执行字节码则是由一个完全独立的标准,即Java虚拟机规格说明(通常也被称为VMSpec)所定义的。JVM字节码是通过javac对Java源代码文件进行编译后生成的,生成的字节码与原本的Java语言存在着很大的不同。比方说,在Java语言中为人熟知的一些高级特性,在编译过程中会被移除,在字节码中完全不见踪影。这方面最明显的

2015-04-27 14:06:23 495

转载 互联网全站HTTPS的时代已经到来

前言我目前正在从事HTTPS方面的性能优化工作。在HTTPS项目的开展过程中明显感觉到目前国内互联网对HTTPS并不是很重视,其实也就是对用户隐私和网络安全不重视。本文从保护用户隐私的角度出发,简单描述现在存在的用户隐私泄露和流量劫持现象,然后进一步说明为什么HTTPS能够保护用户安全以及HTTPS使用过程中需要注意的地方。国外很多网站包括google,facebook,twitter都支持了全站H

2015-04-24 11:05:45 557

转载 打造一款亿级应用你会碰到哪些问题?

饿了么原来有一个机房,差不多有两三百台机器。但是每个月的业务都在涨,所以运维部门很头疼,每个月都要采购设备、上架设备。机房满了再部署一个机房,整个周期又很强,最后不得已把服务部署在云机房。A11上周,腾讯云举 办了“最强应用,由你智造”的沙龙活动。 腾讯云的商务合作负责人王志永表示,腾讯云开始做应用的时候,有许多血的教训。尤其是服务的微信、QQ空间、还有手Q这种过亿级的应用,踩过很多坑,有很 多血和

2015-04-24 10:55:34 422

转载 秒杀系统设计的知识点

秒杀系统涉及到的知识点:A, 高并发,cache,锁机制 B, 基于缓存架构redis,Memcached的先进先出队列。C, 稍微大一点的秒杀,肯定是分布式的集群的,并发来自于多个节点的JVM,synchronized所有在JVM上加锁是不行了D, 数据库压力E, 秒杀超卖问题F, 如何防止用户来刷, 黑名单?IP限制?G, 利用memcached的带原子性特性的操作做并发控制. 秒杀简单设计方案

2015-04-24 10:44:35 500

转载 Memcache架构新思考

Memcache使用中的雷区通常你可能考虑不到,但又隐藏在某处等着你踩的称之为“雷”。带宽和连接数Memcache具有很高吞吐能力,Memecache@Facebook中介绍Memcache支持8万/s读和2万/s写,在weibo内部我们通常认为单个Memcache实例支持7w/s读,2w/s写是安全的。和Facebook一样,为了充分榨取服务器性能,我们会在一台物理机上部署多个Memcache。

2015-04-24 10:40:19 334

转载 架构之重构的12条军规(上)

对于开发者来说,架构设计是软件研发过程中最重要的一环,所谓没有图纸,就建不了房子。在遍地App的互联网时代,架构设计有了一些比较成熟的模式,开发者和架构师也可以经常借鉴。但是,随着应用的不断发展,最初的架构往往面临着各种问题,比如无法满足客户的需求、无法实现应用的扩展、无法实现新的特性等等。在这种情况下,我们如何避免一些坑,尽量比较成功地实现架构的重构,是很多开发者和架构师亟需解决的问题。在这里,跟

2015-04-24 10:30:36 447

转载 【转】对前端质量保障的思考 - Barret Lee

我们时时在踩坑,有时也忍不住埋怨前人给我们留下了无数的坑,可回头想想,自己是不是也在挖坑等别人踩…上次听 赵海平 的讲座,他提到 Facebook 没有测试人员,以前和现在都没有,以后也不打算有。还提到上线之后就开发者坐在系统前等着,只要有bug,系统能够在五分钟之内检测到,并提供快捷方式修复。我惊叹的是他们能够在五分钟之内监控到所有的问题,实时回馈并及时修复。当然在探讨质量保障这个话题前,我们需要

2015-04-24 10:27:46 806

转载 NOSQL数据模型和CAP原理

我本来一直觉得NoSQL其实很容易理解的,我本身也已经对NoSQL有了非常深入的研究,但是在最近准备YunTable的Chart的时候,发现NoSQL不仅非常博大精深,而且我个人对NoSQL的理解也只是皮毛而已,但我还算是一个“知耻而后勇”的人,所以经过一段时间的学习之后,从本系列第六篇开始,就将和大家聊聊NoSQL,而本篇将主要给大家做一下NoSQL数据库的综述。首先将和大家聊聊为什

2015-04-22 10:28:35 547

转载 [译]如何“打败”CAP定理

昨天看到了Nathan Marz这篇《How to beat the CAP theorem》觉得写得很有想法,所以决定把这篇文章翻译成中文,希望能够被更多的人看到,翻译可能不是很准确,如有错误之处欢迎指出。 原文翻译: CAP定理指出一个数据库不可能同时满足:一致性(Consistency)、可用性(Availability)和分区容错性(Partition-Tolerance)

2015-04-22 10:28:15 1085

转载 【分布式系统工程实现】CAP理论及系统一致性

印象中CAP理论开始流行是从Amazon Dynamo的论文开始的,Amazon的CTO还在他的博客中介绍了最终一致性的概念,从此以后,各种会议和交流中都少不了CAP的影子。然而,对于分布式系统工程设计和开发来说,CAP意味着什么呢?CAP 理论由 Berkerly 的 Brewer 教授提出,三者的含义如下:一致性 ( Consistency) :任何一个读操作总是能读取到之前完成的

2015-04-22 10:25:30 929

转载 分布式系统之CAP理论 - DM张朋飞

一.CAP起源  CAP原本是一个猜想,2000年PODC大会的时候大牛Brewer提出的,他认为在设计一个大规模可扩放的网络服务时候会遇到三个特性:一致性(consistency)、可用性(Availability)、分区容错(partition-tolerance)都需要的情景,然而这是不可能都实现的。之后在2003年的时候,Mit的Gilbert和Lynch就正式的证明了这三个特征确实是

2015-04-22 10:25:18 621

转载 持续可用与CAP理论 – 一个系统开发者的观点

持续可用本文主要针对金融数据库,认为金融数据库的持续可用包含两点:一个是强一致性;另外一个是高可用性。数据库系统必须是强一致性的系统,这是因为数据库系统有事务ACID的基本要求,而弱一致系统无法做到。业内也有一些流行的NOSQL系统,例如各种类Dynamo系统,如开源的Cassandra,对同一个最小数据单位(同一行数据)允许多台服务器同时写入,虽然采用NWR机制处理冲突,但是由于不可能解

2015-04-22 10:23:05 442

Java Concurrency in Practice

Java Concurrency in Practice英文

2012-05-14

Expert+One-on-One+J2EE+Design+and+Development.chm

Expert+One-on-One+J2EE+Design+and+Development.chm Expert+One-on-One+J2EE+Design+and+Development.chm Expert+One-on-One+J2EE+Design+and+Development.chm

2011-03-18

The.Definitive.Guide

Packtpub.Oracle.JRockit.The.Definitive.Guide.Jun.2010.pdf Packtpub.Oracle.JRockit.The.Definitive.Guide.Jun.2010.pdf Packtpub.Oracle.JRockit.The.Definitive.Guide.Jun.2010.pdf

2011-03-10

Java并发编程:设计原则与模式.pdf

Java并发编程:设计原则与模式.pdf Java并发编程:设计原则与模式.pdf Java并发编程:设计原则与模式.pdf Java并发编程:设计原则与模式.pdf

2011-03-09

java语言规范.chm

java语言规范.chm java语言规范.chm java语言规范.chm java语言规范.chm java语言规范.chm

2011-03-09

深入java虚拟机.pdf

深入java虚拟机.pdf 第二版

2011-03-02

Oracle PL SQL Programming 4th.chm

Oracle PL SQL Programming

2011-02-21

sql调优技术.chm

sql 调优 sql 调优 sql 调优 sql 调优

2011-01-28

spring官方指南

spring指南。chm spring指南。chm spring指南。chm spring指南。chm

2011-01-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除