摘要:
其实任何简单的问题,只要规模大了都会成为一个问题,就如中国人口多,很多小问题都会变成大问题一样。但处理这种海量数据的方法无非就是分治和”人海”战术。使用人海战术的前提是问题的划分能够支持这种人海战术,其手段无非是切割(纵向,横向)和负载均衡。纵向分隔主要是按业务(功能)来分,也就是所谓面向服务架构,横向分隔方式比较多,主要依赖于所处理的对象属性,比如时间属性或者特定业务数据属性划分(比如铁路客票的车次(每个车次的操作基本上是独立的));负载均衡则可以是镜像(部署)分布(同样的功能部署几份)和计算分布(一个问题分几个子问题在不同的机器上运行,然后合并结果)。当然,这些手段是可以综合利用的,最终可 阅读全文
阅读排行榜
很牛的牛顿迭代法
2011-12-26 22:33 by java线程例子, 15625 阅读, 收藏,
摘要:
在MIT公开课《计算机科学与编程导论》的第五讲中,讲到编写求解平方根的函数sqrt时,提到了牛顿迭代法。今天仔细一查,发现这是一个用途很广、很牛的计算方法。首先,考虑如何编写一个开平方根的函数sqrt(float num, float e)。参数num是要求开平方根的实数,参数e是计算结果可以达到多大误差。这是一个无法得到精确解,只能求出近似解的问题。该如何编写呢?1. 传统的二分法我们可以先猜测一个值作为解,看这个值是否在误差范围内。如果没有达到误差要求,就构造一个更好的猜测值,继续迭代。猜测值可以简单地初始化为num/2,但怎样在下一轮迭代前构造一个更好的猜测值呢?我们不妨参照二分查找算法 阅读全文
Java温故知新 - Switch语句
2012-07-06 21:51 by java线程例子, 10426 阅读, 收藏,
摘要:
一、基本用法switch的case语句可以处理int,short,byte,char类型的值,但是不能处理long,String等类型。因为short,byte,char都会转换成int进行处理,这一点也可以从生成的字节码看出。 char a = 'e'; switch (a) { case 'c': System.out.println("In case c"); break; case 'd': System.out.println("In case d"); break; default: Syste 阅读全文
An internal error occurred during: "Building workspace". Java heap space
2012-04-15 11:44 by java线程例子, 7834 阅读, 收藏,
摘要:
今天MyEclipse导入了一个比较大的项目,出现了an internal error occurred during building workspace错误。网上搜了一下,据说是内存溢出问题。可以通过修改myeclipse.ini文件解决,一例如下。优化之后的ini文件内容:-startupplugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar--launcher.libraryplugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810-prod 阅读全文
Win7系统IIS7+Tomcat7集成
2012-05-17 18:27 by java线程例子, 5853 阅读, 收藏,
摘要:
Win7系统IIS7+Tomcat7集成IIS是Internet Information Services(互联网信息服务)的缩写,是由微软公司提供的基于运行Microsoft Windows的互P联网基本服务,是微软在Windows中内置的Web服务器软件。通过IIS和Tomcat的集成可以让Tomcat处理JSP,IIS处理ASP和Html静态页面。一、安装tomcat我所用的Tomcat是最新版的7.0.27直接安装版,安装的位置是D:\Program Files\Tomcat7,记住这个路径会多次用到,注意在Tomcat之前一定要安装JDK,这里我用的是jdk1.7.二、配置IIS进入 阅读全文
浙公网安备 33010602011771号