自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 网页爬虫及其用到的算法和数据结构

网络爬虫,是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。网络爬虫是搜索引擎系统中十分重要的组成部分,它负责从互 联网中搜集网页,采集信息,这些网页信息用于建立索引从而为搜索 引擎提供支持,它决定着整个引擎系统的内容是否丰富,信息是否即 时,因此其性能的优劣直接影响着搜索引擎的效果。 网络爬虫程序的优劣,很大程度上反映了一个搜索引擎的好差。不信,你可以随便拿一个网站去查询一下各家搜索对它

2014-09-29 18:37:34 943

原创 算法手记(7)快速排序

终于到了经典的快排了,作为20世纪科学和工程领域十大算法之一,自60年代发明以来,一直吸引着一批批工程师和科学家对其改进,今天我们就分析快排算法以及它的几种改进方案。 快速排序 概述:快速排序算法也是基于分治思想的方案,与归并排序不同的是,它是原地排序,同时可以将长度为N的数组排序所需的时间和NlogN成正比,我们已经学习过的算法都无法将这两个优点结合起来。 快速排序流行的原因是因为它实现简单,适

2014-09-29 18:37:17 817

原创 矩阵求逆算法及程序实现(C++)

在做课题时,遇到了求多项式问题,利用了求逆方法。矩阵求逆一般使用简单的算法,还有快速算法 如全选主元高斯-约旦消元法,但本文程序主要写了简单的矩阵求逆算法定义法之伴随矩阵求逆公式如下,其中A可逆:                 A^{-1}=\frac{A^*}{|A|},其中A^*是A的伴随矩阵。。   1.给定一个方阵,非奇异(不是也可,程序有考虑);   2.由矩阵得到其行列式,求其值如|

2014-09-29 18:37:01 2684

原创 我的创业(失败成功)

想写这篇文章已经很久了。但一直不敢写出来。一、是不敢面对创业的失败。二、是不敢面对现实。 作为一个苦逼的IT男,已到奔三年龄,总觉得自己要做点什么,同时也面对的生活压力,总觉得创业才能改变自己。于是2014年选择自己创业。 创业总得做点什么吧!那时候包括现在很多很多的文章都提K13(艹 非要说什么K13,不就是教育吗!!搞什么高大上)。自己也分析K13的前景、市场分析等等。分析。。。分析的,晚上就

2014-09-29 18:36:46 799

原创 如何向Openstack社区提交一个新项目

前几天有个朋友问我:自己有一个idea不错的项目,也把基本的框架写好了,想贡献到Openstack社区,却不知道应该怎么做。正好之前我有过类似的经历,那么来分享一下我是如何向Openstack社区提交一个新项目。 Openstack的整套系统就是一个开源项目的“大杂烩”,社区把所有项目划分为两类:核心和孵化。除非出身特别牛逼或者从其他核心项目独立出来的项目会在设计之初就被列为核心项目(例如Nuet

2014-09-29 18:35:00 1437

原创 再谈通过http访问SSAS

问题: 在有些场景下,数据中心会分为不同的服务器场:数据库场和应用程序场。服务器场间有严格的防火墙控制,其中数据库场只能建立从应用程序场的防火墙穿越,也就是说不允许任何客户端直接连接到防火墙。 这种策略对于数据库引擎来说没什么问题,但是对于分析服务来说就被完全限制住了,通常我们都是通过Excel直接连接分析服务数据库的,并且通过分析服务的角色来控制对数据的访问权限。那么是否有什么方法可以解决这个问

2014-09-29 18:34:40 1462

原创 web跨域通信问题解决

Web页面的跨域问题产生原因是企图使用JS脚本读写不同域的JS作用域。问题根源来自JavaScript的同源策略:出于安全考虑,Javascript限制来自不同源的web页面JS脚本之间进行交互。否则就会出现各种获取用户私密数据的问题。 1、document.domain 它只能只能解决一个域名下的不同二级域名页面跨域,例如person.aa.com与book.aa.com,可以将book.aa.

2014-09-29 18:33:46 975

原创 释放C盘空间的27招优化技巧

主要讲讲Windows操作系统在C盘空间不足的情况下,我们可以通过那些具体手段来增加C盘空间。   1.打开“我的电脑”-“工具”-“文件夹选项”-“查看”-在“显示所有文件和文件夹”选项前打勾-“确定”   2.删除以下文件夹中的内容:   x:\Documents and Settings\用户名\Cookies\下的所有文件(保留index文件)   x:\Documents and Set

2014-09-28 18:27:05 732

原创 软件工程中的依赖管理

软件工程是多人合作的结果,我们做项目的时候,经常需要使用前人的成果或者成熟的第三方包,而这些第三方包又可能再引用第四方包,并且可能存在版本上的区别,这就形成了依赖链。 手工管理依赖是相当麻烦且易出错,因此各大平台都有自己的手段。比如centos下的yum, debian下的apt-get,可以全自动安装各种你需要的包。解决思路也很简单,就是大家把要使用的依赖放到共同的仓库中,谁需要就来仓库拿。 各

2014-09-28 18:26:43 1494

原创 负载均衡 ---- 概念认识篇

客串:屌丝的坑人表单神器 走过的那些事儿:数据库那点事儿 推荐:手把手教你做关键词匹配项目(搜索引擎)---- 第一天 最新:手把手教你做关键词匹配项目(搜索引擎)---- 第十八天 文章开始,先吐槽一下:博客的文章都是技术文章,尼玛就不能多点心路历程,XX管理,处事态度,传说中的求职的事儿以及那些年所遇到的萌人萌事。 一说到负载均衡,很多人都认为高、大、上。所以那些开发就把它供得高高在上,想去触

2014-09-28 18:26:28 822

原创 职场的真相——七句话

提纲: 做事有始有终没有苦劳,只有功劳不犯同样错误职场当战场,上级是司令从来就没有什么救世主向功课好的学生学习错了就是错了这七条是我的工作口头禅。一)做事有始有终何谓有始有终?案例一:生产环境里由BUG引发了脏数据、造成了损失,我们因收到投诉而得知情况。此时有两个法则:一,切忌投诉一起处理一起,那是官府衙门做派。我们身为整个体系的建造者和维护者,一定要举一反三斩草除根,把所有被影响到的情况都查出来

2014-09-28 18:26:00 936

原创 网络七层知多少,学以致用

OSI网络七层包括: 1{应用层,表示层,会话层,传输层} 2{网络层,数据链路层,物理层} 1主要负责互操作性 2用于创造两个网络设备间的物理连接. 第7层应用层:OSI中的最高层。为特定类型的网络应用提供了访问OSI环境的手段。应用层确定进程之间通信的性质,以满足用户的需要。应用层不仅要提供应用进程所需要的信息交换和远程操作,而且还要作为应用进程的用户代理,来完成一些为进行信息交换所必需的功能

2014-09-28 18:25:46 769

原创 缓存篇(Cache)~大话开篇

想写这篇文章很久了,但总是感觉内功还不太够,总觉得,要写这种编程领域里的心法(内功)的文章,需要有足够的实践,需要对具体领域非常了解,才能写出来。如今,感觉自己有写这种文章的能力了,所以,快马加鞭,把这个内功写出来,分享给大家,分享我的Fans! 缓存:缓存的领域很广泛,实现方法也很多,你可以使用文件,内存来实现缓存,而缓存的方法也有很多,对于一个网页来说,你可以缓存它的页面内容(HTML),或者

2014-09-28 18:25:25 808

原创 整理大型网站架构必知必会的几个服务器知识

整理大型网站架构必知必会的几个服务器知识 最近看书及系统开发部署过程中的一些心得,再对照自己之前的从业经验,很多都是听闻而已,当然也有一些已经很熟悉,有的正在搞,有的未来希望可以着手付诸实施,留此存照。 1、负载均衡服务器 负载均衡服务器主要作用是实现某些类型服务器的规模扩展。比如对于系统前端的web服务器和后端的数据库服务器,想通过加服务器实现N+1横向扩展,通过多台服务器负载分担压力,负载均衡

2014-09-28 18:24:07 806

原创 开机自检

关于开机自动检测硬盘的原因: 第一种:是你非法关机造成的,比如直接断电的情况。 windows在遇到非法关机后,磁盘读写操作还没有完成,数据都保存在内存里,而内存一旦断电里边的数据就会全部丢失,这样一下系统就会丢失数据而无法往磁盘里保存数据,并且读写操作无法完成而被迫终止。 当你下一次开机的时候,windows就会自动检测硬盘分区上的错误,并且试图修复错误。最好不要跳过这个步骤,否则以后系统再对硬

2014-09-28 18:23:50 827

原创 系统构架设计应考虑的因素

摘要:本文从程序的运行时结构和源代码的组织结构两个方面探讨了系统构架设计应考虑的各种因素,列举了系统构架设计文档应考虑的一些问题。 关键字:系统构架、设计、考虑、因素正文:约公元前25年,古罗马建筑师维特鲁威说:“理想的建筑师应该既是文学家又是数字家,他还应通晓历史,热衷于哲学研究,精通音乐,懂得医药知识,具有法学造诣,深谙天文学及天文计算。”(好难哪,软件构架设计师的要求呢?大家好好想想吧。)本

2014-09-28 18:23:34 1098

原创 应用MVP模式对遗留代码进行重构

AV(Autonomous View)自治视图在面向终端用户的应用中,都需要一个可视化的UI来与用户交互.这个UI称为View视图. 在早期,我们习惯将所有前台的逻辑,与视图揉在一起,称为AV自治视图. 这些逻辑包括:数据呈现(Display),用户动作的扑捉与响应,数据存储等. 在.Net的Winform和ASP.NET Web Form中,采用的都是事件驱动模型. AV是将所有UI相关的逻辑都

2014-09-28 18:23:30 794

原创 架构师修炼 III - 掌握设计原则

关于软件的设计原则有很多,对于设计原则的掌握、理解、实践及升华是架构师的一项极为之必要的修炼。 记得在12年前第一次阅读《敏捷开发》时,五大基本设计原则就深深地植入到我的脑海中一直影响至今,我也由此获益良多。设计原则当然不止只有五种,最主要的面向对象的设计原则有以下这些: 单一职责原则 (SRP) - 就一个类而言,应该仅有一个引起它变化的原因开-闭原则 (OCP)- 软件实体(类,模块,函数等)

2014-09-28 18:23:19 815

原创 最近架构随想

今天新加坡放假,闲来无事就发一篇博客:一则总结归纳项目构架经验,审视并逐步提高自己;再者分享最近学习所得,希望各位能讨论并给些建议。六月三十日从原来公司离职,七月一日入职新公司,不知不觉已经快一个月了。最近忙于学习新的行业知识以及项目的重构设计,没有时间发博客,也没有时间回复邮件及博文评论,忘各位见谅! 今天发几张项目重构设计草图,如果大家对项目分层与文件夹结构比较感兴趣,可以参考几年前弦哥的.N

2014-09-28 18:23:07 700

原创 可以落地的软件架构

搞Java的开发人员交谈中经常提及框架和架构两个词汇。Java开源社区活跃,大量优秀的开源项目可以学习借鉴这,本来是件好事。但同时又难免会让人好高骛远,被空中楼阁所迷惑。 搞Linux下C开发,.Net开发的同行们就很少言必称框架与架构,默默地编码实实在在地做项目。想起刚刚参加工作时候,公司的CTO告诫年轻同事说,“别跟我扯框架,你先写了10万行代码再和我说”。 为什么公司的资深工程师不愿意和年轻

2014-09-28 18:21:35 882

原创 一次简单的重构经验

背景曾经为一家律师事务所做的案件信息管理工作,使用的是Playframework 2.3.x / Java。由于是外包项目,原来就只是一个工程,也没有打算再拆分子模块。 后来这家公司继续为系统考虑添加功能,要增加一系列的CRM中的销售管理的功能,问题慢慢浮现。 我发现问题有几个: Playframework本来就能进行代码修改、编译、加载、运行,一直以来都非常方便,但是开始CRM部分工作,这个修改

2014-09-27 16:57:12 885

原创 一次DDOS攻击引起的安全漫谈

昨天,U-EEE的网站收到了持续数分钟的DDOS攻击,在数据库、虚拟磁盘和Web 服务器、SSH服务器依次满载之后,攻击依然持续了数分钟,在所有漏洞尝试无果后,攻击者放弃了攻击,系统恢复了正常访问。 LogWatch发回的报告中显示,攻击针对常用的系统了漏洞均做了尝试,这些不仅仅包含了已有软件的漏洞,也包含了对人为过失漏洞的尝试。 看到报告时,其实觉得有点好玩,因为,曾经我们都是脚本小子,甚至我在

2014-09-27 16:56:55 862

原创 可以落地的软件架构

搞Java的开发人员交谈中经常提及框架和架构两个词汇。Java开源社区活跃,大量优秀的开源项目可以学习借鉴这,本来是件好事。但同时又难免会让人好高骛远,被空中楼阁所迷惑。 搞Linux下C开发,.Net开发的同行们就很少言必称框架与架构,默默地编码实实在在地做项目。想起刚刚参加工作时候,公司的CTO告诫年轻同事说,“别跟我扯框架,你先写了10万行代码再和我说”。 为什么公司的资深工程师不愿意和年轻

2014-09-27 16:56:29 635

原创 入门必须掌握8个DOS命令

一,ping   它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。下面就来看看它的一些常用的操作。先看看帮助吧

2014-09-27 16:56:20 582

原创 [架构] 分布式和集群的区别

一次在群里面看到群友们在讨论这个的区别,看了他们发表的言论,觉得很有道理,很通俗易懂,就当做学习的笔记记录在这里: 用两个例子看清楚分布式和集群的区别: 例子1: 如果一个任务由10个子任务组成,每个子任务单独执行需1小时,则在一台服务器上执行改任务需10小时。 采用分布式方案,提供10台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。(这种工作模式的

2014-09-27 16:56:15 759

原创 windows常用快捷键

F1 显示当前程序或者windows的帮助内容。 F2 当你选中一个文件的话,这意味着“重命名” F3 当你在桌面上的时候是打开“查找:所有文件” 对话框 F5 刷新 F10或ALT 激活当前程序的菜单栏 F11当你在打开网页时,是隐藏侧边栏 F12在编辑好Excel 或Word文档,可“另存为” Backspace 如果在“另存为”或“打开”对话框中选中了某个文件夹,则打开上一级文件夹 Ente

2014-09-27 16:55:56 614

原创 Windows 批处理

第一章 批处理基础第一节 常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为 BAT 或者 CMD。这些命令统称批处理命令。 小知识:可以在键盘上按下 Ctrl+C 组合键来强行终止一个批处理的执行过程。了解了大概意思后,我们正式开始学习.先看一个简单的例子! @echo off echo "欢迎来到非常 BAT!" pause

2014-09-27 16:55:50 848

原创 Visual C++网络编程--笔记

1.OSI七层网络模型:OSI网络模型是一个开放式系统互联的参考模型。其包括1、物理硬件层,2、数据链路层,3、网络层,4、数据传输层,5、会话层,6、表示层,7、应用层。在网络通信的发送端,其通信数据每到一个通信层,都会被该层协议在数据中添加一个包头数据,而在接收方则恰好相反,数据通过每一层时都会被该层协议剥去相应的包头数据。 各网络层的定义 物理硬件层:顾名思义,对应的物理设备,比如网卡等 数

2014-09-27 16:55:38 900

原创 一步一步搭建开发框架(五)单元工作模式

1,单元工作模式主要为了提高与数据库的交互次数,提高应用程序效率。我们知道实际的业务操作中,有时需要好几张表一快保存,一块删除之类的逻辑,比如注册用户之后,用户表要加一条数据,积分表等与用户表有外键关系的表可能也需要保存数据,这样造成多次保存,也就是多次与数据库交互。 2,前边我把SaveChange()方法都写到了BaseDal里面,今晚上就把这个SaveChange方法提取出来!我们继续封装一

2014-09-27 16:55:38 650

原创 VHD轻松实现双系统

VHD(Microsoft Virtual Hard Disk format)。目前可以使用Microsoft Virtual PC 2007 and Microsoft Virtual Server 2005以及Hyper-V对此格式进行操作, VirtualBox也提供了对VHD的支持。微软的VHD文件格式是一种虚拟机硬盘(virtual machine hard disk), 并可以被压缩成

2014-09-27 16:55:25 1658

原创 Magicodes框架之路——起航

前言 从事开发也好几年了,并且最近一直在做架构搭建的工作。这些时间,最大的感悟就是: 只有自己理解了的才是自己的。对架构这块,若欲立之,必先破之。故此,才准备利用业余时间来倾力打造这套框架。由于时间精力以及能力有限,也许这套框架初期会有很多不合理之处,但是我相信只要有恒心,这套框架迟早会打磨完美。由于本人秉承做一行爱一行的原则,对代码也比较痴迷,故此命名为Magicodes框架。 Magicode

2014-09-27 16:54:59 1061

原创 Hadoop大数据零基础高端实战培训系列配文本挖掘项目

《Hadoop大数据零基础高端实战培训系列配文本挖掘项目(七大亮点、十大目标)》 课程讲师:迪伦 课程分类:大数据 适合人群:初级 课时数量:230课时 用到技术:部署Hadoop集群 涉及项目:京东商城、百度、阿里巴巴 咨询QQ:1609173918 下载地址: 链接:http://pan.baidu.com/share/link?shareid=3299239734&uk=3289559542

2014-09-27 16:54:16 950

原创 .NET应用架构设计—工作单元模式(摆脱过程式代码的重要思想,代替DDD实现轻量级业务)

阅读目录: 1.背景介绍 2.过程式代码的真正困境 3.工作单元模式的简单示例 4.总结 1.背景介绍 一直都在谈论面向对象开发,但是开发企业应用系统时,使用面向对象开发最大的问题就是在于,多个对象之间的互操作需要涉及数据库操作。两个业务逻辑对象彼此之间需要互相调用,如果之间的互相操作是在一个业务事务范围内的,很容易完成,但是如果本次业务逻辑操作涉及到多个业务对象一起协作完成时问题就来了。 在以往

2014-09-27 16:53:57 1009

原创 S5PV210 IROM & BL0启动

三星S5PV210基于A8内核,是arm v7体系,广泛应用于手机和平板解决方案中。市场上也有很多基于S5PV210芯片的开发板(如smart210, gec210等),用于学习高级ARM体系编程。S5PV210跟S5PC11X基本一致,很多人认为两者是同样的SOC,只不过是封装不同,事实上,两者确实略有不同。跟S5PC11X相比,S5PV210没有内置16MSRAM和电源管理模块,解码能力也有些

2014-09-27 16:53:27 970 1

原创 Linux 文件及文件夹权限

普及 linux 基础知识,Linux 文件及文件夹权限,不要动不动就 777 权限。网上教程过于复杂啰嗦,简单总结如下... 一、查看 Linux 文件权限 ls -l (通用) ll (Ubuntu适用,等于ls -al) 二、权限标示符 r(读)、w(写)、x(执行) 4(读)、2(写)、1(执行) 注:目录必须有执行权才能读取 二、修改 Linux 文件权限 方法一 chmod -R 77

2014-09-27 16:52:46 739

原创 TCP、UDP、IP报头结构体分析

TCP、UDP、IP报头结构体分析 TCP数据段格式 TCP是一种可靠的、面向连接的字节流服务。源主机在传送数据前需要先和目标主机建立连接。然后,在此连接上,被编号的数据段按序收发。同时,要求对每个数据段进行确认,保证了可靠性。如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段。 下图为TCP头部结构: ●源、目标端口号字段:各占16比特。TCP协议通过使用"端口"来标

2014-09-19 21:39:39 732

原创 Scala的未来

Scala 团队最近发表了一篇题为《Scala 的下一步计划》的文章,这篇文章对 Scala 这门语言的未来进行了描述,并对 Scala 后续的三个主要版本的特性和目标进行了细化:改善语言和它的类库,从而让它变得更容易理解、更加健壮,并且性能更好。   Scala 2.12 是下一个主要版本,在最近的 InfoQ 文章《Scala 2.12 将只支持 Java 8》中已有所介绍。而再接下去的两个版

2014-09-19 21:39:23 744

原创 php一个uuid的实现

uuid:说白就是保证不管任何时间、设备上的结果都不会重复。 在网上看了几个uuid的实现,几乎上都是基于时间戳,php自带的uniqid()函数也是基于时间戳的。 我的实现思路如下: 1. 首先用时间保证以不会生成与之前重复的时间的。我精确毫秒,保证时间上几乎唯一。 2. 保证在多态设备上唯一。 我在其中加入时区信息。保证不同时区内容,不会重复。(其实,最后想想这个对于我现在使用不到的。除非你的

2014-09-19 21:38:49 892

原创 Java地位无可动摇的12个原因

如今,面对曾经在程序员中被各种新技术掩盖直至堙灭的技术值得怀念。犹如 COBOL 这当年被老程序员们尊为神器的语言如今也基本没有价值。而 Java 作为现代程序员的中坚力量在这点上或许会成为下一个 COBOL。   有关 JAVA 的技术卖出多少本书已经是一个很久远的记忆了。现处中年时期的 Java 语言的用途已经不再出现在各种杂志的封面上了。JAVA 从出生到现在已经 19 年了,应用开发圈已经

2014-09-19 21:35:28 834

空空如也

空空如也

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

TA关注的人

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