Fork me on GitHub

2013年6月27日

摘要: 大数据应用之双色球算奖平台总体设计数据规模估算篇大数据应用之双色球算奖平台总体设计数据规模估算篇作者:张子良版权所有,转载请注明出处引子:什么才算大数据? 自从写了上一篇《大数据应用之双色球算奖平台总体设计大纲篇一》,受到许多园友的关注和指导,在此表示感谢,尤其是园友个人知识管理给出的一个评论,让我深思,原文如下“双色球算奖这么简单的活,也称大数据。先生:不是数据多,叫大数据。双色球算奖,用Oracle数据库的索引,1分钟内就算完。关键是人家不想这么快”。话不太好听,尤其是称我为先生那句,但却发人深思,是啊:到底什么是大数据呢?选择双色球算奖作为大数据应用的切入点是否合适呢?然后就是让我诧异. 阅读全文
posted @ 2013-06-27 14:00 HackerVirus 阅读(618) 评论(0) 推荐(0)
摘要: 关于模型的合法性,Entity.IsValid()合理吗?背景见过很多框架(包括我自己的)都会在实体的定义中包含一个IsValid()方法,用来判断实体的合法性,是否应该这样设计呢?本文就这个问题介绍一点想法,希望大家多批评。实体能否处于“非法”状态?实体是否应该包含IsValid()方法的深层次问题是:“实体能否处于非法状态?”。我们来定义一些术语,接下来我就引用这些术语:A模式:实体允许处于非法状态,但是实体要包含一个IsValid()方法进行校验。B模式:实体不允许处于非法状态,业务逻辑必须保证这一点。关于A模式我不想多说了,A模式本身没有问题的,今天重点说说如何实现B模式。如何实现B模 阅读全文
posted @ 2013-06-27 13:58 HackerVirus 阅读(269) 评论(0) 推荐(0)
摘要: Padrino 博客开发示例英文版出处:http://www.padrinorb.com/guides/blog-tutorial楼主按拿作者自己的话说:Padrino(谐音:派骓诺)是一款基于Sinatra的优雅的Web应用开发框架,旨在使Web应用的开发变得轻松有趣。楼主主要是在一台二手笔记本上跑Linux、体验Padrino并对原文进行翻译的。Ruby领域推荐平台是OS X,其次是Linux,如果你对Linux环境感兴趣,可以参考我的配置信息。博客搭建指导每当我看见天边的绿洲全新的框架,就会想起东方奇诺瓦如何搭博客。我觉得这是让新人迅速上手的最佳方式。本指南将向大家展示如何利用Padri 阅读全文
posted @ 2013-06-27 13:57 HackerVirus 阅读(238) 评论(0) 推荐(0)
摘要: Linux操作系统学习_用户态与内核态之切换过程因为操作系统的很多操作会消耗系统的物理资源,例如创建一个新进程时,要做很多底层的细致工作,如分配物理内存,从父进程拷贝相关信息,拷贝设置页目录、页表等,这些操作显然不能随便让任何程序都可以做,于是就产生了特权级别的概念,与系统相关的一些特别关键性的操作必须由高级别的程序来完成,这样可以做到集中管理,减少有限资源的访问和使用冲突。Intel的X86架构的CPU提供了0到3四个特权级,而在我们Linux操作系统中则主要采用了0和3两个特权级,也就是我们通常所说的内核态和用户态。 运行于用户态的进程可以执行的操作和访问的资源都受到极大的限制,而运行于内 阅读全文
posted @ 2013-06-27 13:56 HackerVirus 阅读(245) 评论(0) 推荐(0)
摘要: 用户态到内核态切换之奥秘解析学号:SA12**6112本文将主要研究在X86体系下Linux系统中用户态到内核态切换条件,及切换过程中内核栈和任务状态段TSS在中断机制/任务切换中的作用及相关寄存器的变化。一:用户态到内核态切换途径:1:系统调用 2:中断 3:异常对应代码,在3.3内核中,可以在/arch/x86/kernel/entry_32.S文件中查看。二:内核栈内核栈:Linux中每个进程有两个栈,分别用于用户态和内核态的进程执行,其中的内核栈就是用于内核态的堆栈,它和进程的task_struct结构,更具体的是thread_info结构一起放在两个连续的页框大小的空间内。在内核.. 阅读全文
posted @ 2013-06-27 13:35 HackerVirus 阅读(367) 评论(0) 推荐(1)

2013年6月26日

摘要: 设计模式——工厂模式 (C++实现)软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。工厂模式属于创建型模式,大致可以分为三类,简单工厂模式、工厂方法模式、抽象工厂模式。听上去差不多,都是工厂模式。下面一个个介绍,首先介绍简单工厂模式,它的主要特点是需要在工厂类中做判断,从而创造相应的产品。当增加新的产品时,就需要修改工厂类。有点抽象,举个例子就明白了。有一家生产处理器核心的厂家,它只有一个工厂,能够生产两种核心的处理器核。客户需要什么样的处理器核 阅读全文
posted @ 2013-06-26 23:46 HackerVirus 阅读(350) 评论(0) 推荐(0)
摘要: TOGAF架构内容框架之内容元模型(上)2.内容元模型(Content Metamodel) 在TOGAF的眼中,企业架构是以一系列架构构建块为基础的,并将目录、矩阵和图形作为其具体展现方式。如果我们把这些表述方式看作为构建块的语法,那么在其语义层面又该如何定义呢?为了解答这一问题,TOGAF制定了内容元模型。这一元模型对各个架构构建块的类型以及他们之间的关系进行了明确的定义,而且为了体现与架构开发方法之间的联系,内容元模型中相关内容是比照着架构开发方法各阶段来进行组织的,阐明了架构开发方法各个阶段所涉及到的构建块类型,以及他们之间的关系。除了这些特点之外,内容元模型最特别之处还在于,它通过一 阅读全文
posted @ 2013-06-26 23:42 HackerVirus 阅读(2624) 评论(0) 推荐(1)
摘要: C#编写Windows 服务Microsoft Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这使服务非常适合在服务器上使用,或任何时候,为了不影响在同一台计算机上工作的其他用户,需要长时间运行功能时使用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。 使用Microsoft Visual Studio2012可以很方便的创建一个Windows服务,本例实现一个向D盘的txt文件里,写入系统时间的Windows 阅读全文
posted @ 2013-06-26 23:41 HackerVirus 阅读(180) 评论(0) 推荐(0)
摘要: SSD Buffer Pool Extension简介 SQL Server 2014中另一个非常好的功能是,可以将SSD虚拟成内存的一部分,来供SQL Server数据页缓冲区使用。通过使用SSD来扩展Buffer-Pool,可以使得大量随机的IOPS由SSD来承载,从而大量减少对于数据页的随机IOPS和PAGE-OUT。SSD AS Buffer Pool SSD是固态硬盘,不像传统的磁盘有磁头移动的部分,因此随机读写的IOPS远远大于传统的磁盘。将SSD作为Buffer Pool的延伸,就可以以非常低的成本巨量的扩充内存。而传统的模式是内存只能容纳下热点数据的一小部分,从而造成比较大的P 阅读全文
posted @ 2013-06-26 23:38 HackerVirus 阅读(255) 评论(0) 推荐(0)
摘要: .NET Web开发技术简单整理在最初学习一些编程语言、一些编程技术的时候,做的更多的是如何使用该技术,如何更好的使用该技术解决问题,而没有去关注它的相关性、关注它的理论支持,这种学习技术的方式是短平快。其实工作中有时候也是这样,公司要推崇一个新技术、一个解决方案,我们总是短平快的去学习如何使用它,按照固定的解决问题思路按着案例进行,这也是一种应对项目紧急的一些措施。个人感觉如果有空闲时间的话,还是分析一下、理解一下、深入了解一下比较好,这些技术是如何交互的、这些技术的理论支持什么、为什么要用这项技术、这项技术的优缺点怎样?这也是一个从实践到理论再到实践的过程,或许会发现新的视野、新的收获。本 阅读全文
posted @ 2013-06-26 23:34 HackerVirus 阅读(261) 评论(1) 推荐(1)