`
iamzhongyong
  • 浏览: 797221 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
    ​    ​参加工作已经两年多了,加上实习的时间差不多快三年了,中间做过很多项目,但是成功的不多,PM,也就是所谓的项目经理做过很多次,有业务项目,有技术驱动项目,有大型跨团队项目,有了一些感悟,大概 ...
        这篇文章来自一个公司内部的分享,是自己所服务的业务中数据平台的发展历程,已经讲了有几个月了,最近打算挑几个点拿出来用文章的形式写出来。是自己进入公司以来参与过或者接触过的数据型项目的情况。基本包含了业务数据分析的整个流程。这篇文章纯文字描述,没有任何图呵呵。所以看我需要耐心。           1、最早的数据分析可能就报表         目前很多数据分析后的结果,展示的形式很多,有各种图形以及报表,最早的应该是简单的几条数据,然后搞个web页面,展示一下数据。早期可能数据量也不大,随便搞个数据库,然后SQL搞一下,数据报表就出来了。但是数据量大起来怎么分析呢?数据分析 ...
​       目前的互联网架构中,缓存已经成了一个不可或缺的部分,可以将没有了缓存,很多事情玩不转了,目前开源中用的比较多的例如memcached,也有公司自己研发缓存系统的,例如淘宝已经开源的tair,当缓存的服务器数量增加或者本身就需要多机房容灾的时候,数据在多机房情况下如何分配,就成了一个问题,这篇文章就对这个问题展开讨论。        对于分布式缓存来讲,由一个集群机器组成,这些机器有个特点,就是内存很牛逼,没办法,做缓存就是要放在内存里的吗,不过也有内存服务器的硬板来缓冲的,把内存文件dump到硬盘,用于机器断电等情况。虽然由一个集群(也就是多台机器)组成,但是对于应用系统来讲 ...
国庆库布齐沙漠徒步 或许,我们赋予了徒步沙漠很多意义;或许,我们就是想走走,没有原因;或许,我们就是想自虐一下;或许,沙漠冥冥之中在召唤我们;或许,我们是想在大漠黄沙中需找失去的自己;或许,就是玩一下。 十分庆幸,我们完成了突破,坚持了下来,在出发之前,我自己也在怀疑自己,是否能够走下来?三天两夜,坐标距离48公里,一行八人小队,成功穿越。 关于队员组成? 最早的时候和女朋友讨论国庆去哪里玩,最后定了内蒙古,然后就开始在蚂蜂窝上找游记,后来看了库布其沙漠,觉得可以挑战一下。然后就和大学的两个哥们联系,一个@林先生,一个是@路sir,后来这两个名额就定下了。又在公司内网上发帖召集队友, ...
Spring3中提供了一个功能,就是在一个方法上添加注解,调用这个方法的时候自动在线程池中异步话执行。 由于老系统暂时无法升级到spring的3版本,所以翻了一下Spring3中的实现代码。 Spring3中总体就是Spring的AOP和Schema,这两个方式,至于Spring3中注解异步化的使用,这里就不介绍了。   实现思路: 1、搞一个注解来做标志位(就是添加了这个注解,方法自动异步化); 2、用Aspect来处理注解; 3、系统直接使用;  
最近在关注性能的事情,所以对于多线程程序中,如何设置最佳的线程数,找了一些文章。虽然有公式可以套用, 但是,其实最佳的话只是相对的,了解了过程之后,处理线程数的设置就会游刃有余了。 名字解释: 1、QPS:系统每秒处理的请求数(query per second) 2、RT:系统的响应时间,一个请求的响应时间,也可以是一段时间的平均值 3、最佳线程数量:刚好消耗完服务器瓶颈资源的临界线程数 ​ QPS和RT的关系: 对于单线程:QPS=1000/RT
关于debug,在很早之前看过一篇不错的文章(http://iamzhongyong.iteye.com/blog/1397374 ),转载了一下, 最近做项目,有些已经忘记了,整理几个技巧在这里。 但是,建议大家少做debug,debug是很耗时的操作。。。   1、远程debug(这个大家基本都会) 就是本机的eclipse来debug远程的java进程,需要两个步骤。 第一个:java进程启动的时候,加入可以debug的参数 (-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,addre ...

关于AOP的种种疑问

    博客分类:
  • java
    最近在用AOP做一个小东西,于是开始翻阅一些AOP的资料,中间解决了自己的一些疑问,记录下来。          什么是AOP?     其实早就知道呵呵,这里作为引子吧。AOP是面向切面的编程。最大的好处就是对于已有的系统 ...
        最近了解了一下基于协程来做异步话的场景。一些基本概念写在这里。       ​    ​多任务调度方面,操作系统怎么搞的?         一种是抢占式,指操系统给每个任务一定的执行时间片,在到达这个时间片后,如果任务仍然没有释放对CPU的占用,则操作系统强制释放,这是目前多数操作系统实现的方式。         一种是协作式,指操作系统按照任务的顺序来分配CPU,每个任务执行过程中除非主动释放,否则将一直占据CPU,一旦任务占据CPU不放,会导致其他任务饿死,目前操作系统不太采用这种方式。           通常程序如何支持高并发?         一种是基于 ...
        使用Btrace已经一段时间了,对于原理一直处于比较模糊的状态,最近有时间来进一步看代码,所以打算写一下。         类似Btrace的工具目前不少,例如housemd,以及很多基于Btrace的扩展。本来考虑搞一个源码分析的,但是发现没那么多经历,万变不离其宗,还是看一下基本的原理吧。         1、JDK6中的Instrucment (java扩展组件)         这个似乎JDK5之后提供的一个组件,能够修改Class的信息,但是JDK5的时候需要在进程中添加agent的信息,这样就导致了不是很灵活。无法再不停机的情况下来进行动态的变化。于是JDK6 ...
目前在做性能分析的事情,之前没怎么接触perf,找了几篇文章梳理了一下,按照问题的形式记录在这里。 方便自己查看。   什么是perf? linux性能调优工具,32内核以上自带的工具,软件性能分析。在2.6.31及后续版本的Linux内核里,安装perf非常的容易。 几乎能够处理所有与性能相关的事件。   什么是性能事件? 指在处理器或者操作系统中发生,可能影响到程序性能的硬件事件或者软件事情。   主要关注点在哪里?
        最近在看一个开源的Cache框架,里面提到使用JMX来查看Cache的命中率以及响应时间等,于是翻了一些JMX的文章,整理了一下。 问题:什么是JMX? 问题:JMX的架构是什么样子的? 问题:JMX以及Mbean中的 概念都有那些? 问题:如何编写一个简单的Standard MBean?
    ​这本书其实看了有一年多了,当时看完之后觉得很有用,但是一直没有记录下来。最近在床头有翻起这本书,再一次觉得这本书很好。于是决定写一下笔记。    1、书的开头,写的很好,虽然就一句话: “都是平凡人,为什么若干年之后彼此已成天壤之别。时间这条船,为什么只会送心智成熟的人去往梦想的彼岸。”   2、俞敏洪作序中的一句话: “一切都靠积累,一切都可以提前准备,越早醒悟越好。人的一生是奋斗的一生,有的人一生过的很伟大,有的人一生过得很琐碎。”  
    ​    ​这篇文章是一个思路,陆续接触空间范的细化过程中的体会和一些实践。抛出来供大家拍砖。     ​    ​概述     ​    ​本文的例子是拿物流公司的配送来展开,大家都知道,物流是一个空间属性很强的行业,有些地方能够送到,有些地方送不到,有些服务在一些去也没法履行,而这个时候,我们应该怎样做,才能满足这个需求呢?且看本文逐步道来。     ​    ​首先国家标准行政区域,目前总体是分为三级:省、市、区(当然也有特殊,有些市下面就没有区,例如东莞市),如果范围精确到市和区这一级别,我们应该怎么做?如果精确到区下面的级别(例如文三路送到,文二路送不到),这个时候又应 ...
    ​    ​首先讲一下开关的由来,例如东京在6月18日做店庆促销活动,在交易下单环节,可能需要调用A、B、C三个接口来完成,但是其实A和B是必须的,C只是附加的功能(例如在下单的时候做一下推荐),可有可无,在平时系统没有压力,容量充足的情况下,调用下没问题,但是在类似店庆之类的大促环节,系统已经满负荷了,这时候其实完全可以不去调用C接口,怎么实现这个呢?改代码?no,no,no,这样太不敏捷,此时开关诞生了,开发人员只要简单执行一下命令或者点一下页面,就可以关掉对于C接口的调用,在大促过去之后,再把开关恢复回去即可。       ​    ​问题一:在单个java系统中如何实现开 ...
Global site tag (gtag.js) - Google Analytics