<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[jayluns的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jayluns</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jayluns]]></copyright><item><title><![CDATA[12306模型设计探讨]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84795337</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84795337</guid><author>jayluns</author><pubDate>Thu, 28 Apr 2016 14:10:01 +0800</pubDate><description><![CDATA[
春节期间，无意中看到一篇文章，文章中讲到12306的业务复杂度远远比淘宝天猫这种电商网站要复杂。后来自己想想，也确实如此。所以，很想挑战一下12306这个系统的核心领域模型的设计。一般的电商网站，购买都是基于商品的概念，每个商品有一定量的库存，用户的购买行为是针对商品的。当用户发起购买行为时，系统只需要生成订单并对用户要购买的商品减库存即可。但是，12306就不是那么简单了，具体复杂在哪里，我下...]]></description><category></category></item><item><title><![CDATA[Dubbo与Zookeeper、SpringMVC整合]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84771430</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84771430</guid><author>jayluns</author><pubDate>Fri, 18 Mar 2016 16:31:24 +0800</pubDate><description><![CDATA[
  互联网的发展，网站应用的规模不断扩大，常规的垂直应用架构已无法应对，分布式服务架构以及流动计算架构势在必行，Dubbo是一个分布式服务框架，在这种情况下诞生的。现在核心业务抽取出来，作为独立的服务，使前端应用能更快速和稳定的响应。
 
第一：介绍Dubbo背景
 
    
 
 
 
大规模服务化之前，应用可能只是通过RMI或Hessian等工具，简单的暴露和引用远程服务，...]]></description><category></category></item><item><title><![CDATA[TCP/IP，http，socket，长连接，短连接]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84771423</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84771423</guid><author>jayluns</author><pubDate>Fri, 18 Mar 2016 16:22:51 +0800</pubDate><description><![CDATA[
TCP/IP TCP/IP是个协议组，可分为三个层次：网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传输层中有TCP协议与UDP协议。 在应用层有:TCP包括FTP、HTTP、TELNET、SMTP等协议                  UDP包括DNS、TFTP等协议 短连接 连接-&amp;gt;传输数据-&amp;gt;关闭连接 HTTP是无状...]]></description><category></category></item><item><title><![CDATA[机房流量问题总结分析]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84767339</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84767339</guid><author>jayluns</author><pubDate>Sat, 27 Feb 2016 19:38:51 +0800</pubDate><description><![CDATA[
1【提出问题】
【实际案例一】
凌晨3:00点某公司（网站业务）的一个IDC机房带宽流量突然从平时高峰期150M猛增至1000M，如下图：
 
该故障的影响：直接导致数百台服务器无法连接，该机房全部业务中断。
 
实际案例二】
某年某月某日夜老男1孩接到学生紧急求助，公司网站（web游戏业务）平时几十M带宽，结果突然跑满100M，持续100M已经很久。事后，该学生的总结开头如下，...]]></description><category></category></item><item><title><![CDATA[传统it项目管理与互联网项目管理的一些区别]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84765731</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84765731</guid><author>jayluns</author><pubDate>Wed, 17 Feb 2016 15:09:27 +0800</pubDate><description><![CDATA[
传统行业项目经理更加注重的是项目的整体的把控性，针对一个项目成立一个项目组，专职的进行项目需求管理、客户的沟通管理、项目方案的设计等等具体的工作，区向与强矩阵管理。对于而互联网公司的项目经理，更加是一种协调管理，互联网公司的软件版本更新快，一般都是采用小而快迭代的开发方式。针对项目的开发过程多为产品经理提出设计思路后，直接和开发敲定项目开发进度后由项目经理进行进度管理，基本上属于职能型管理模式...]]></description><category></category></item><item><title><![CDATA[分布式数据库方案]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84764728</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84764728</guid><author>jayluns</author><pubDate>Wed, 03 Feb 2016 16:54:40 +0800</pubDate><description><![CDATA[
第1章 引言
随着互联网应用的广泛普及，海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用，每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能，横向扩展数据层已经成为架构研发人员首选的方式。

水平切分数据库：可以降低单台机器的负载，同时最大限度的降低了宕机造成的损失；
负载均衡策略：可以降低单台机器的访...]]></description><category></category></item><item><title><![CDATA[MySQL的读写分离的几种选择]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84764709</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84764709</guid><author>jayluns</author><pubDate>Wed, 03 Feb 2016 16:24:52 +0800</pubDate><description><![CDATA[
 

MySQL主从复制（Master-Slave）与读写分离（MySQL-Proxy）实践
 
原址如下：
http://heylinux.com/archives/1004.html
 
Mysql作为目前世界上使用最广泛的免费数据库，相信所有从事系统运维的工程师都一定接触过。但在实际的生产环境中，由单台Mysql作为独立的数据库是完全不能满足实际需求的，无论是在安全性，高可用性...]]></description><category></category></item><item><title><![CDATA[移动互联网App客户端服务端通信安全问题。]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84762320</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84762320</guid><author>jayluns</author><pubDate>Wed, 20 Jan 2016 12:13:53 +0800</pubDate><description><![CDATA[
作为一个移动互联网App，天生是需要和服务器通信的。那么，服务器如何识别客户端的身份？我们如何保证数据传输过程中的安全性？要靠两个东西：使用AppKey做身份识别，使用AppSecret校验数据。这两个东西的定义可以参考淘宝开放平台上这种比较严肃的说法：AppKey客户端调用API时的唯一标识，服务器通过App Key来鉴别应用的身份。调用API接口时必须传入的参数。App SecretApp ...]]></description><category></category></item><item><title><![CDATA[前后端分离开发部署模式]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84756080</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84756080</guid><author>jayluns</author><pubDate>Sat, 12 Dec 2015 11:10:33 +0800</pubDate><description><![CDATA[
这周着手开始重新构建官网，OTA1.3V继续推进，目前分为了企业版，与国外版，老官网那套架构的代码经过几千人手的改动，于是索性干掉，采用新的架构模式(前后端分离开发部署模式)，找到下面这篇文章我觉得说的挺好，在开始讨论这个话题之前我们先来认识一下传统的开发模式。
一、传统开发模式
相信很多做过Web开发童鞋应该都会经历这样一种开发模式，利用后端语言提供的模版引擎编写HTML／XML页面，比...]]></description><category></category></item><item><title><![CDATA[高并发 网站前期的技术准备(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84748767</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84748767</guid><author>jayluns</author><pubDate>Sat, 07 Nov 2015 11:09:41 +0800</pubDate><description><![CDATA[

高并发 网站前期的技术准备




开了自己域名的博客，第一篇就得来个重磅一点的才对得起这4美金的域名。作为一个技术从业者十年，逛了十年发现有些知识东一榔头西一棒槌的得满世界 看个遍才整理出个头绪，那咱就系统点的从头一步一步的说，一个从日几千访问的小小网站，到日访问一两百万的小网站，怎么才能让它平滑的度过这个阶段，别在 技术上出现先天不足，写给一些技术人员，也写给不懂技术的创业者。...]]></description><category></category></item><item><title><![CDATA[Jenkins + Git + Maven + tomcat集成环境(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84748764</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84748764</guid><author>jayluns</author><pubDate>Sat, 07 Nov 2015 11:01:01 +0800</pubDate><description><![CDATA[
 
    折腾了好几天，终于吧Jenkins + Git + Maven + tomcat集成环境搭建起来了，最终主要实现“自动构建、部署”web应用。
 
1、安装环境
    操作系统：Centos 6.5
    JDK：1.7.x
    Maven：3.1.x
    Git： 1.7.1，自建GitLab平台
    tomcat：7.x
 
    上述宿主机...]]></description><category></category></item><item><title><![CDATA[迭代开发模式(9)需求变更的关键步骤--(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84536402</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84536402</guid><author>jayluns</author><pubDate>Wed, 12 Mar 2014 16:31:25 +0800</pubDate><description><![CDATA[
前面我们提到了需求变更。当客户提出了需求变更，经过与我们的需求人员的详细讨论与分析，最后确定下来了变更内容和修改方案。但这时草率地开始进行设计和开发是不正确的，它将成为项目后期的一个巨大的风险，一颗定时zhadan，为什么呢？我们来详细分析分析。每当发生需求变更的时候，不管是大是小，项目的许多因素都会相应地发生变化。首先发生变化的是工作量。每次的变更必然造成工作量的增加，到底增加了多少呢？我们...]]></description><category></category></item><item><title><![CDATA[迭代开发模式(8)从容的面对需求变更--(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84536400</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84536400</guid><author>jayluns</author><pubDate>Wed, 12 Mar 2014 16:30:41 +0800</pubDate><description><![CDATA[
前面我们已经详细描述了一次迭代式开发的完整过程，首先是项目计划的前期分析——工作量评估和优先级评估，然后是制订迭代式的项目计划，最后是按照项目计划执行项目。每天，运用Burn-Down Table监控项目进程，随时掌握项目进度的偏差（是滞后还是超前），然后制订相应的应对方案予以调整，直到最后的项目结束，一切似乎进行得比较顺利。但真实的情况往往不是这样，这里忽略了一个最重要的因素，那就是需求变更...]]></description><category></category></item><item><title><![CDATA[迭代开发模式(7),开始工作--(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84536399</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84536399</guid><author>jayluns</author><pubDate>Wed, 12 Mar 2014 16:30:16 +0800</pubDate><description><![CDATA[
我们经过以上一系列的分析，工作量评估与优先级评估，制订出一个迭代式的项目计划，再经过一系统用户确认与公司评审以后，终于可以开始我们真正的开发工作。其实，迭代式开发的执行过程，也就是制作和不断去关注与评估项目进度表的过程。因此，当项目进入执行开发过程时，项目经理应当首先制作项目进度表。现在我们看看项目进度表长得啥样儿。在一个项目进度表中，首先被纵向划分为三个区域：未开始任务区、正在进行任务区和已...]]></description><category></category></item><item><title><![CDATA[迭代模式项目计划(6)转]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84536397</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84536397</guid><author>jayluns</author><pubDate>Wed, 12 Mar 2014 16:29:42 +0800</pubDate><description><![CDATA[
前面我们提到，当我们为软件分解工作项目，评估了工作量，确定了优先级。同时，整个项目的人员安排，也就是哪些人负责需求分析，哪些人负责设计，哪些人负责开发，哪些人负责测试，被确定下来，我们就可以制订我们的迭代式开发的项目计划了。迭代式开发的最重要的特点就是迭代，即将整个开发过程划分为数个迭代期，每个迭代期的时间长短并非完全一致，但却差别不大，这就是迭代周期。迭代周期的长短视项目情况而定，过短可能会...]]></description><category></category></item><item><title><![CDATA[迭代模式的最终总结(10)where you are?(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84536396</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84536396</guid><author>jayluns</author><pubDate>Wed, 12 Mar 2014 16:29:20 +0800</pubDate><description><![CDATA[
其实做一个项目经理真不是一个好的职业，它需要太多的千锤百炼才能修炼出来。这不仅需要反复经历“失败-总结-再失败”的轮回，而且需要有一颗无比坚强的心，能够在无数次经历无比艰难并且令人沮丧的时刻而能坚持不懈、毫不气馁。一个项目经理就像一位将军。将军百战死，而项目经理呢，经历无数项目以后沉淀下来的，更多的是疲惫与沧桑。 但凡一个好的项目经理都是要经过一次又一次项目失败的教训，似乎只有失败才能留给他们...]]></description><category></category></item><item><title><![CDATA[迭代开发模式(5)功能点的优先级的评估(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84535869</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84535869</guid><author>jayluns</author><pubDate>Tue, 11 Mar 2014 09:40:52 +0800</pubDate><description><![CDATA[
前面我们提到，迭代式开发最重要的两项前期分析就是工作量评估和优先级评估。工作量评估不仅能够确定整个项目的开发周期、成本预算，而且能够确定每项工作的开发周期，为工作的时间分配提供了依据。但是，如此多的工作，谁先做谁后做，如何安排它们的先后顺序，则是由工作优先级来决定的。迭代式开发的特点就是持续集成，也就是首先开发最重要、最基本的功能，而暂时忽略掉分支的、次要的功能。正因为如此，迭代式开发需求将优先...]]></description><category></category></item><item><title><![CDATA[迭代开发模式(4)工作量的评估(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84535866</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84535866</guid><author>jayluns</author><pubDate>Tue, 11 Mar 2014 09:36:48 +0800</pubDate><description><![CDATA[
当我问起无数人，什么是迭代式开发时，人们总是抛来一副不屑的神情：“迭代开发！这还不清楚？就是按迭代的方式进行开发嘛，开发过程采用持续集成的方式。”但我再详细询问怎么进行开发，甚至谈到如何制订计划，以及计划前的分析整理时，人们却投来诧异与迷茫的神情：“啊！迭代开发这么复杂呢？”所有对迭代式开发的实践与研究中，工作量评估往往是最令人头痛、最大的难题。当人们信心满满地决定尝试迭代开发时，工作量评估就让...]]></description><category></category></item><item><title><![CDATA[迭代开发的开始(3)-(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84535863</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84535863</guid><author>jayluns</author><pubDate>Tue, 11 Mar 2014 09:30:39 +0800</pubDate><description><![CDATA[
古人云：“运筹帷幄之中，决胜千里之外。”一次成功的软件开发，制订完善的项目计划是决定性的第一步，迭代式开发更是如此。前面我们提到，迭代式开发与传统开发方式差异不小，迭代式开发其过程更加复杂，协调各方协同工作的步骤也就更多。迭代式开发的特点就是迭代，在每个迭代期都包含需求分析、设计、开发、测试。因此，迭代式开发从一开始就要求开发中的各方人员，需求分析员、设计师、开发人员与测试人员，几乎同时开工。如...]]></description><category></category></item><item><title><![CDATA[如何进行迭代开发(2)(转)]]></title><link>https://blog.youkuaiyun.com/jayluns/article/details/84535855</link><guid>https://blog.youkuaiyun.com/jayluns/article/details/84535855</guid><author>jayluns</author><pubDate>Tue, 11 Mar 2014 09:23:29 +0800</pubDate><description><![CDATA[
前面我们提到了迭代式开发的巨大优势，它可以降低我们软件开发的巨大风险，它可以使我们把握用户的真正需求，它可以使我们从错误与偏差中及时纠正过来，那么我们应该如何进行迭代式开发呢？要回答这个问题，我们首先要弄清迭代式开发与传统的瀑布式开发的差别在哪里。1.需求分析的差别与传统的软件开发一样，迭代式开发同样需要与客户进行一个充分的需求分析。但与传统的软件开发不一样，迭代式开发不要求初期的需求分析是一...]]></description><category></category></item></channel></rss>