摘要: 题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人;但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有意思,动手写几个demo,但web socket需要特定的服务器支持,由于标准制定工作还没完成,所以 阅读全文
posted @ 2016-07-22 11:57 jinchunguang 阅读(124) 评论(0) 推荐(0)
摘要: 目录结构 目录结构 目录结构 一、什么是Websocket websocket是html5提出的一个协议规范,参考rfc6455. 不过目前还都是在草案,没有成为标准,毕竟html5还在路上。 websocket约定了一个通信的规范,通过一个握手的机制,客户端(浏览器)和服务器(web server 阅读全文
posted @ 2016-07-22 11:56 jinchunguang 阅读(397) 评论(0) 推荐(0)
摘要: WebSocket的动机是什么? 目前的Web通信使用的是HTTP协议,HTTP协议是基于TCP协议的应用层协议,HTTP协议的工作模式是request/response模式。在一次通信中,必须首先由client向server发起TCP连接,然后server接受该TCP连接请求,在TCP连接建立之后 阅读全文
posted @ 2016-07-22 11:55 jinchunguang 阅读(212) 评论(0) 推荐(0)
摘要: 1. websocket是什么 Websocket是html5提出的一个协议规范,参考rfc6455。 websocket约定了一个通信的规范,通过一个握手的机制,客户端(浏览器)和服务器(webserver)之间能建立一个类似tcp的连接,从而方便c-s之间的通信。在websocket出现之前,w 阅读全文
posted @ 2016-07-22 11:53 jinchunguang 阅读(958) 评论(0) 推荐(0)
摘要: 1. 前言 Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,主流的Web端即时通讯方案大致有4种:传统Ajax短轮询、Comet技术、WebSocket技术、SSE(Server-sent Events)。本文将简要介绍这4种技术的原理,并指出各自的异同点、优缺点等。 2. 阅读全文
posted @ 2016-07-22 11:48 jinchunguang 阅读(281) 评论(0) 推荐(0)
摘要: 新手入门:史上最全Web端即时通讯技术原理详解 字数4514 阅读41 评论0 喜欢4 前言 有关IM(InstantMessaging)聊天应用(如:微信,QQ)、消息推送技术(如:现今移动端APP标配的消息推送模块)等即时通讯应用场景下,大多数都是桌面应用程序或者native应用较为流行,而网上 阅读全文
posted @ 2016-07-22 11:46 jinchunguang 阅读(543) 评论(0) 推荐(0)
摘要: 简介 快递物流系统里最常见的一种业务类型就是订单的查询和记录。订单的特点是随着递送过程,订单数据需要随时更新路径。数据结构上需要可以灵活应对,这点非常符合Document模型,并且MongoDB支持GIS功能,非常适用于MongoDB来支撑物流业务。并且MongoDB具备Sharding能力,而物流 阅读全文
posted @ 2016-07-22 11:43 jinchunguang 阅读(1665) 评论(0) 推荐(0)
摘要: 先看网站架构图: 以上网站架构广泛运用中大型网站中,本文从架构每一层分析所用主流技术和解决手段,有助于初入网站运维朋友们,进一步对网站架构认识,从而自己形成一套架构概念。 第一层:CDN 国内网络分布主要南电信北联通,造成跨地区访问延迟大问题,对于有一定访问量网站来说,增加CDN(内容分发网络)层可 阅读全文
posted @ 2016-07-22 11:41 jinchunguang 阅读(519) 评论(0) 推荐(0)
摘要: 短短几十年国内互联网发生了翻天覆地的变化,特别是国家支持互联网发展,提出了“互联网+”行动计划,国内各行各业的互联网更是日新月异。作为一个九零后小白没有亲身经历互联网的演变历程,如今看的像淘宝、京东、腾讯这样的大型网站充满了无数的好奇心,这些网站是怎么运作的,如何处理大量用户的请求,如何解决海量的数 阅读全文
posted @ 2016-07-22 11:40 jinchunguang 阅读(197) 评论(0) 推荐(0)
摘要: 线程池是Mysql5.6的一个核心功能,对于服务器应用而言,无论是web应用服务还是DB服务,高并发请求始终是一个绕不开的话题。当有大量请求并发访问时,一定伴随着资源的不断创建和释放,导致资源利用率低,降低了服务质量。线程池是一种通用的技术,通过预先创建一定数量的线程,当有请求达到时,线程池分配一个 阅读全文
posted @ 2016-07-22 11:32 jinchunguang 阅读(2165) 评论(0) 推荐(0)
摘要: MYSQL 应该是最流行了 WEB 后端数据库。WEB 开发语言最近发展很快,PHP, Ruby, Python, Java 各有特点,虽然 NOSQL 最近越來越多的被提到,但是相信大部分架构师还是会选择 MYSQL 来做数据存储。 MYSQL 如此方便和稳定,以至于我们在开发 WEB 程序的时候 阅读全文
posted @ 2016-07-22 11:30 jinchunguang 阅读(327) 评论(0) 推荐(0)
摘要: 没有什么东西是一成不变的,包含我们的理想和生活!MySQL作为一个免费的开源的关系型数据库,深受大家喜爱,从最初的无人问津到当下的去IOE,都体现出了MySQL举足轻重的作用。今天我们就从淘宝的发展来阐述MySQL在大型网站下的架构演变史! MySQL的可扩展性 架构的可扩展性往往和并发是息息相关, 阅读全文
posted @ 2016-07-22 11:29 jinchunguang 阅读(198) 评论(0) 推荐(0)
摘要: 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL 阅读全文
posted @ 2016-07-22 11:27 jinchunguang 阅读(188) 评论(0) 推荐(0)
摘要: 一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 1、数据库表设计 项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部 阅读全文
posted @ 2016-07-22 11:24 jinchunguang 阅读(2007) 评论(0) 推荐(2)
摘要: 咚咚是什么?咚咚之于京东相当于旺旺之于淘宝,它们都是服务于买家和卖家的沟通。 自从京东开始为第三方卖家提供入驻平台服务后,咚咚也就随之诞生了。 我们首先看看它诞生之初是什么样的。 1.0 诞生(2010 – 2011) 为了业务的快速上线,1.0 版本的技术架构实现是非常直接且简单粗暴的。 如何简单 阅读全文
posted @ 2016-07-22 11:19 jinchunguang 阅读(297) 评论(0) 推荐(0)
摘要: 对 很多创业公司而言,随着业务的增长,网站的流量也会经历不同的阶段。从十万流量到一百万流量,再从一百万流量跨越到一千万甚至上亿的流量,网站的架构需要 经历哪些变化?我们一起听听 58 同城的技术委员会执行主席沈剑在 OneAPM 技术公开课上的回答(以下演讲整理): 本场演讲我主要阐述一下,58同城 阅读全文
posted @ 2016-07-22 11:19 jinchunguang 阅读(248) 评论(0) 推荐(0)
摘要: 任何一个大型网站都是经历用户积累然后成长,从一台服务器到多台服务器才能构架支撑网站现有数据、用户、页面请求等。大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发 阅读全文
posted @ 2016-07-22 11:01 jinchunguang 阅读(188) 评论(0) 推荐(0)
摘要: 说明,此规范为内部制定的一个给开发人员如何使用MySQL的规范,由Team共同讨论制定,还在不断的完善中,有一些建议或者规定不一定十分合理,后续可能会修改。另外,MySQL版本不断进化,也会导致有一些条款失效,请大家根据自身的情况谨慎参考。 blackjack , roulette , slots  阅读全文
posted @ 2016-07-22 10:58 jinchunguang 阅读(242) 评论(0) 推荐(0)
摘要: 一,安全提高 1.提供保存加密认证信息的方法,使用.mylogin.cnf文件。使用 mysql_config_editor可以创建此文件。这个文件可以进行连接数据库的访问授权。 mysql_config_editor会进行加密而不是明文存储。客户端只会在内存中进行解密。这样密码以非明文方式存储,不 阅读全文
posted @ 2016-07-22 10:57 jinchunguang 阅读(313) 评论(0) 推荐(0)
摘要: 如何评价一个公司数据库运维水平的高低?用什么来进行横向与纵向对比?自动化平台建设的目标是什么?必须有相应的指标体系来指导,此指标体系必须满足以下条件: • 可以用数字来测算和衡量 • 最终指标,而不是中间指标 比如有时DBA会关注数据库的吞吐量,但吞吐量越高不能代表数据库提供的服务质量越好,开发人员 阅读全文
posted @ 2016-07-22 10:56 jinchunguang 阅读(4995) 评论(0) 推荐(0)