进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。但是,系统空间却是“公共场所”,所以内核显然可以提供这样的条件。除此以外,那就是双方都可以访问的外设了。在这...
water
10年前 (2014-12-04) 2932℃ 0评论
0喜欢
架构演变第一步:物理分离webserver和数据库
最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了,这个时候由于网站具备了一定的特色,吸引了部...
water
10年前 (2014-12-04) 4991℃ 0评论
2喜欢
网站技术高速发展的今天,缓存技术已经成为大型网站的一个关键技术,缓存设计好坏直接关系的一个网站访问的速度,以及购置服务器的数量,甚至影响到用户的体验。
网站缓存按照存放的地点不同,可以分为客户端缓存、服务端缓存。
客户端缓存
客户端缓存又可分为:浏览器缓存、网关或代理服务器缓存...
water
10年前 (2014-12-04) 19150℃ 0评论
11喜欢
什么是IO
Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数据源的对象都会提供以数据流的方式读写它的数...
water
10年前 (2014-12-04) 7094℃ 0评论
6喜欢
首先我们先来了解一下进程、线程、并发执行的概念:
进程是指:一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。
线程是指:进程中的一个执行流程,一个进程中可以运行多个线...
water
10年前 (2014-12-04) 2655℃ 0评论
0喜欢
@Controller
@Controller 负责注册一个bean 到spring 上下文中,bean 的ID 默认为
类名称开头字母小写,你也可以自己指定,如下
方法一:
@Controller
public class TestController {}
方法二:
@Con...
water
10年前 (2014-12-03) 3294℃ 0评论
0喜欢
参数:
options
返回值:
XMLHttpRequest
使用HTTP请求一个页面。
这是jQuery的低级AJAX实现。要查看高级抽象,见$.set、$.post等,这些方法更易于理解和使用。但是功能上有限制(例如,没有错误处理函数)。
警告:如果数据类型指定为&...
water
10年前 (2014-12-03) 3270℃ 0评论
0喜欢
我们在研究其他的网站的样式的时候经常会发现一种情况,就是在很多background属性里都调用同一张图片,来满足网页各个部分的使用。打开这种图片看一下,会发现这张图片上包含了很多小图片;
又如:
这些小图片就是整图分割后的各个部分,把各个部分放在一张图片上,而不是是分别存储成...
water
10年前 (2014-12-03) 2894℃ 0评论
0喜欢
CSS的元素选择器除了根据id(#)、class(.)、属性([ ])选取元素以外,还有很重要的一类,就是根据元素的特殊状态来选取元素。它们就是伪类和伪元素。跟id选择器、类选择器、属性选择器以及派生选择器等等这些从HTML文档层次结构(DOM树)中获取元素不同的是,伪类和伪元素...
water
10年前 (2014-12-02) 3478℃ 0评论
0喜欢
序列(List)
<#-- 定义序列 -->
<#assign mynums=[11,12,13,14,15,16,17,18,19]/>
<#list mynums as mn>
${mn}
</#list>
拆分...
water
10年前 (2014-12-01) 6742℃ 0评论
3喜欢
块级元素(block)特性:
总是独占一行,表现为另起一行开始,而且其后的元素也必须另起一行显示;
宽度(width)、高度(height)、内边距(padding)和外边距(margin)都可控制;
内联元素(inline)特性:
和相邻的内联元素在同一行;
宽度(wi...
water
10年前 (2014-11-25) 2954℃ 0评论
0喜欢
过去这一年的时间里,我买了不少书,查了很多资料,可以算是认真的学习了几种主流的脚本语言,因为我一直想搞一个好用的自动化工具,来方便我们的系统维 护。虽然这个愿望还没有达成,但是在这个过程中,还是学到了很多东西。今天下午,跟同事们聊天时,说到了脚本语言,这是比较难得的,也正好借这个...
water
10年前 (2014-11-25) 3281℃ 0评论
0喜欢
2009-10-12 02:26
TIOBE世界编程语言排行榜展现了编程语言的流行趋势,每 个月,都有最新的数据被更新。这份排行榜的数据取样来源于互联网上富有经验的程序员、商业应 用、著名的搜索引擎(诸如谷歌、 MSN 、雅虎)的关键字排名、 Alexa 上的排名等。这个...
water
10年前 (2014-11-25) 4992℃ 0评论
0喜欢
很多人都会用一些“脚本语言”(scripting language),却很少有人真正的知道到底什么是脚本语言。很多人用 shell 写一些“脚本”来完成日常的任务,用 Perl 或者 sed 来处理一些文本文件,很多公司用“脚本”来跑它们的“build”(叫做 build scr...
water
10年前 (2014-11-25) 2935℃ 0评论
0喜欢
解释型语言和编译型语言的区别
首先,我们编程都是用的高级语言(写汇编和机器语言的大牛们除外),计算机不能直接理解高级语言,只能理解和运行机器语言,所以必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。
说到翻译,其实翻译的方式有两种,一个是编译,一个是...
water
10年前 (2014-11-25) 3747℃ 0评论
0喜欢
转载自:http://ifeve.com/gc-oriented-java-programming/
Java程序员在编码过程中通常不需要考虑内存问题,JVM经过高度优化的GC机制大部分情况下都能够很好地处理堆(Heap)的清理问题。以至于许多Java程序员认为,我只需要关心何时...
water
10年前 (2014-11-25) 3283℃ 0评论
0喜欢
在应用里经常都有用到在后台跑定时任务的需求。举个例子,比如需要在服务后台跑一个定时任务来进行垃圾回收(译者注:个人觉得用定时任务来跑垃圾回收不是很好的例子,从译者接触到的项目来看,比较常见的是用定时任务来进行非实时计算,清除临时数据、文件等)。
在本文里,我会给大家介绍3种不同的...
water
10年前 (2014-11-25) 2958℃ 0评论
0喜欢
纯粹基于道德而掌握开发堆栈的每一方面的预期是合理的吗?可能不是,但Facebook这样要求。一个Facebook的员工在OSCON告诉我,Facebook只雇佣全栈开发者。那么全栈开发者是什么意思呢?
对我来说全栈开发者是对每一层都熟悉的人,如果不真正对所有的软件技...
water
10年前 (2014-11-25) 2864℃ 0评论
2喜欢
Java通过Executors提供四种线程池,分别为:
newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。
newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程...
water
10年前 (2014-11-25) 3116℃ 0评论
0喜欢
Java的自动内存管理机制(automatic storage management system known as a garbage collector)省却了很多编码工作,大大地提高了Java的生产力,而且JVM的性能也越来越好,特别是G1的出现,改善了垃圾回收中stop ...
water
10年前 (2014-11-25) 9111℃ 0评论
7喜欢