http://bbs.5y6s.com/htm_data/20/0702/9283.html
一、什么是C/S和B/S

第一、什么是C/S结构
C/S (Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。

传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件, 加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高, 效率低。如我院使用的上海超兰公司“案件统计”管理软件就是典型的C/S体系结构管理软件。

第二、什么是B/S结构
B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

第三、管理软件主流技术
管理软件技术的主流技术与管理思想一样,也经历了三个发展时期。首先,界面技术从上世纪DOS字符界面到Windows图形界面(或图形用户界面GUI),直至Browser浏览器界面三个不同的发展时期。其次,今天所有电脑的浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其风格都是一样的,使用人对操作培训的要求不高,而且软件可操作性强,易于识别;再者,平台体系结构也从过去单用户发展到今天的文件/服务器(F/S)体系、客户机/服务器(C/S)体系和浏览器/服务器(B/S)体系。

二、C/S和B/S 之比较

C/S和B/S是当今世界开发模式技术架构的两大主流技术。C/S是美国 Borland公司最早研发,B/S是美国微软公司研发。目前,这两项技术以被世界各国所掌握,国内公司以C/S和B/S技术开发出产品也很多。这两种技术都有自己一定的市场份额和客户群,各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群体,都有一大群文人墨客为自己摇旗呐喊,广告满天飞,可谓仁者见仁,智者见智。

1、C/S架构软件的优势与劣势

(1)、应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。

(2)、数据的储存管理功能较为透明。在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。

(3)、C/S架构的劣势是高昂的维护成本且投资大。首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。

其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。

2、B/S架构软件的优势与劣势

(1)、维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。

(2)、成本降低,选择更多。大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。 现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。

比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。

(3)、应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。

Web服务作为炙手可热的技术,如何应用到企业的IT系统和商业流程之中、并给企业带来直接的经济效益,一直备受国内外企业管理者的高度关注和推崇。而在近两年,出现了一种技术架构被誉为下一代Web服务的基础架构,它就是SOA(Service-oriented architecture,面向服务架构)。1996年,Gartner最早提出SOA。2002年12月,Gartner提出SOA是”现代应用开发领域最重要的课题”,还预计到2008年,SOA将成为占有绝对优势的软件工程实践方法,主流企业现在就应该在理解和应用SOA开发技能方面进行投资。

更好支持商业流程
SOA并不是一个新事物,IT组织已经成功建立并实施SOA应用软件很多年了,BEA、IBM、等厂商看到了它的价值,纷纷跟进。SOA的目标在于让IT变得更有弹性,以更快地响应业务单位的需求,实现实时企业(Real-Time Enterprise,这是Gartner为SOA描述的愿景目标)。而BEA的CIO Rhonda早在2001年6月就提出要将BEA的IT基础架构转变为SOA,并且从对整个企业架构的控制能力、提升开发效率、加快开发速度、降低在客户化和人员技能的投入等方面取得了不错的成绩。

SOA是在计算环境下设计、开发、应用、管理分散的逻辑(服务)单元的一种规范。这个定义决定了SOA的广泛性。SOA要求开发者从服务集成的角度来设计应用软件,即使这么做的利益不会马上显现。SOA要求开发者超越应用软件来思考,并考虑复用现有的服务,或者检查如何让服务被重复利用。SOA鼓励使用可替代的技术和方法(例如消息机制),通过把服务联系在一起而非编写新代码来构架应用。经过适当构架后,这种消息机制的应用允许公司仅通过调整原有服务模式而非被迫进行大规模新的应用代码的开发,使得在商业环境许可的时间内对变化的市场条件做出快速的响应。

SOA也不仅仅是一种开发的方法论–它还包含管理。例如,应用SOA后,管理者可以方便的管理这些搭建在服务平台上的企业应用,而不是管理单一的应用模块。其原理是,通过分析服务之间的相互调用,SOA使得公司管理人员方便的拿到什么时候、什么原因、哪些商业逻辑被执行的数据信息,这样就帮助了企业管理人员或应用架构师迭代地优化他们的企业业务流程、应用系统。

SOA的一个中心思想就是使得企业应
Crontab计算器:https://tooltt.com/crontab-parse/

0 0 07 01 * /bin/sh /usr/local/tads/htdocs/*/crontab/install.sh >/dev/null 2>&1

1月7日凌晨0点执行一个脚本!

注意:
1.尽量写绝对路径;
2.sh要写/bin/sh
3.给要执行的sh文件,这儿install.sh赋予权限:chmod a+x install.sh

Tencent:/usr/local/tads/htdocs/maestro/crontab # cat /usr/local/tads/htdocs/*/crontab/install.sh
cp -Rf /usr/local/tads/htdocs/*/view/usershow2.php /usr/local/tads/htdocs/*/view/usershow.php
cp -Rf  /usr/local/tads/htdocs/*/view/images/flow.jpg.need.replace /usr/local/tads/htdocs/*/view/images/flow.jpg




周一到周五每天下午 5:00 寄一封信给 alex@domain.name :
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata
#周一到周五每天下午 5:00 寄一封信给 alex@domain.name :
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata
#每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha"
20 0-23/2 * * * echo "haha"
#晚上11点到早上8点之间每两个小时,早上8点
0 23-7/2,8 * * * date
#每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * mon-wed date
#1月份日早上4点
0 4 1 jan * date

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
crontab文件的一些例子:
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每晚的21:30重启apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每月1、10、22日的4 : 45重启apache。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每周六、周日的1 : 10重启apache。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
#上面的例子表示每星期六的11 : 00 pm重启apache。
* */1 * * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子每一小时重启apache
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
#上面的例子晚上11点到早上7点之间,每隔一小时重启apache
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
#上面的例子每月的4号与每周一到周三的11点重启apache
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
#上面的例子一月一号的4点重启apache


来自:http://bbs.chinaunix.net/thread-1699269-1-1.html
Memcache是什么?
Memcache是一个自由和开放源代码、高性能、分配的内存对象缓存系统。用于加速动态web应用程序,减轻数据库负载。 
它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。
Memcached是简单而强大的。它简单的设计促进迅速部署,易于发展所面临的问题,解决了很多大型数据缓存。它的API可供最流行的语言。
Memcache的知名用户有:LiveJournal、Wikipedia、Flickr、Bebo、Twitter、Typepad、Yellowbot、Youtube 等。
Memcache官方网站:http://memcached.org/

Memcached又是什么?
Memcache是该系统的项目名称,Memcached是该系统的主程序文件,以守护程序方式运行于一个或多个服务器中,随时接受客户端的连接操作,使用共享内存存取数据。

那PHP中的Memcache是什么?
php中的所讲的memcache是用于连接Memecached的客户端组件。



Memcache如何安装?

Memcached 服务端安装:(源码包官方网站下载)
系统命令

   1. tar xvf memcached-1.2.6.tar.gz  
   2. cd memcached-1.2.6  
   3. ./configure --prefix=/usr/local/memcached  
   4. make    
   5. make install  



然后就可以启动memcached的守护进程了:
系统命令

   1. /usr/local/memcached/bin/memcached -p 11211 -l 127.0.0.1 -d -u nobody -P /var/run/memcached.pid -m 64M -c 1024  



几个参数的解释:

-p memcached监听的TCP端口
-l 监听的ip地址,127.0.0.1是本机,当然也可以写上你的服务器IP,如:61.150.91.26,这是我服务器的IP地址,如果你需要多个服务器都能够读取这台memcached的缓存数据,那么就必须设定这个ip
-d 以daemon方式运行,将程序放入后台
-u memcached的运行用户,我设定的是nobody
-P memcached的pid文件路径
-m memcached可以使用的最大内存数量
-c memcached同时可以接受的最大的连接数

如果你希望以socket方式来访问memcached,那么在启动的时候就必须去掉 -l和-p参数,并加上-s参数:

-s memcached的socket文件路径



php中memcache扩展组件的安装:
系统命令

   1. tar xvf memcache-3.0.3.tgz  
   2. cd memcache-3.0.3  
   3. /usr/local/php5/bin/phpize  
   4. ./configure --with-php-config=/usr/local/php5/bin/php-config --enable-memcache  
   5. make  
   6. make install  



    按照我的环境,编译出来的memcache.so保存在 /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ 目录下,如果你的环境不一样,你得根据自己情况修改你的php.ini了。

接着要做的工作就是让php加载这个扩展,编辑你的php.ini,在适当位置(通常是最后,也可以是独立的一个ini文件)加入如下行:

extension=memcache.so

然后重启你的phpfastcgi进程或者apache,运行一个phpinfo()来确认一下,正常的话你应该可以看到这个了:memcache



php-memcache的简单使用举例:


PHP代码

[code]
   1. <?php  
   2.  
   3. $memcache = new Memcache;  
   4. $memcache->connect('127.0.0.1','11211');  
   5. $memcache->setCompressThreshold(20000, 0.2);    // 设置压缩  
   6. echo $memcache->getVersion();                   // 输出memcached版本  
   7.  
   8. $test = array(1,2,3,4,5,'abcde');               //生成一个数组  
   9.  
  10. if($memcache->get('test')){  
  11.         print_r($memcache->get('test'));        //获取数据  
  12.         echo "\n";  
  13.         echo 'cached';  
  14.         echo "\n";  
  15. }else{  
  16.         $memcache->set('test',$test,0,30);      //写入数据  
  17.         echo 'no cache';  
  18.         echo "\n";  
  19. }  
  20. ?>  [/code]



附:网上有朋友提供的《Memcached 的使用和协议分析详解》
默认:

httpd.conf 在/etc/httpd/conf

my.cnf 在/etc

php.ini 在/usr/local/lib

在Unix上,php.ini文件缺省放在/usr/local/lib上面,因为缺省的存放路径是<install-path> /lib,但是可以在编译的时候使用--with-config-file-path参数来修改php.ini的存放位置,例如你可以使用--with- config-file-path=/etc把它存放到/etc下面,然后可以从源码包中拷贝php.ini-dist到/etc/php.ini并修改使之满足需要。

Windows上面php.ini的缺省位置是windows系统目录,如果使用了Apache的话,那么将首先从 Apache的安装目录中查找 php.ini,例如:c:program filesapache groupapache,这样你可以在同一台机器上面为不同的Apache版本设置不同的php.ini文件。
负载均衡将是大型网站解决高负荷访问和大量并发请求采用的终极解决办法。
负载均衡技术发展了多年,有很多专业的服务提供商和产品可以选择,我个人接触过一些解决方法,其中有两个架构可以给大家做参考。
硬件四层交换
第四层交换使用第三层和第四层信息包的报头信息,根据应用区间识别业务流,将整个区间段的业务流分配到合适的应用服务器进行处理。 第四层交换功能就象是虚IP,指向物理服务器。它传输的业务服从的协议多种多样,有HTTP、FTP、NFS、Telnet或其他协议。这些业务在物理服务器基础上,需要复杂的载量平衡算法。在IP世界,业务类型由终端TCP或UDP端口地址来决定,在第四层交换中的应用区间则由源端和终端IP地址、TCP和UDP端口共同决定。
在硬件四层交换产品领域,有一些知名的产品可以选择,比如Alteon、F5等,这些产品很昂贵,但是物有所值,能够提供非常优秀的性能和很灵活的管理能力。Yahoo中国当初接近2000台服务器使用了三四台Alteon就搞定了。

软件四层交换
大家知道了硬件四层交换机的原理后,基于OSI模型来实现的软件四层交换也就应运而生,这样的解决方案实现的原理一致,不过性能稍差。但是满足一定量的压力还是游刃有余的,有人说软件实现方式其实更灵活,处理能力完全看你配置的熟悉能力。
软件四层交换我们可以使用Linux上常用的LVS来解决,LVS就是Linux Virtual Server,他提供了基于心跳线heartbeat的实时灾难应对解决方案,提高系统的鲁棒性,同时可供了灵活的虚拟VIP配置和管理功能,可以同时满足多种应用需求,这对于分布式的系统来说必不可少。

一个典型的使用负载均衡的策略就是,在软件或者硬件四层交换的基础上搭建squid集群,这种思路在很多大型网站包括搜索引擎上被采用,这样的架构低成本、高性能还有很强的扩张性,随时往架构里面增减节点都非常容易。这样的架构我准备空了专门详细整理一下和大家探讨。

对于大型网站来说,前面提到的每个方法可能都会被同时使用到,我这里介绍得比较浅显,具体实现过程中很多细节还需要大家慢慢熟悉和体会,有时一个很小的squid参数或者apache参数设置,对于系统性能的影响就会很大,希望大家一起讨论,达到抛砖引玉之效。


阅读全文

云计算

WEB2.0 jackxiang 2010-1-6 13:35
IT专家网的解释:

  “云计算”(Cloud Computing)是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,或者说是这些计算机科学概念的商业实现。许多跨国信息技术行业的公司如IBM、Yahoo和Google等正在使用云计算的概念兜售自己的产品和服务。

  云计算这个名词可能是借用了量子物理中的“电子云”(Electron Cloud),强调说明计算的弥漫性、无所不在的分布性和社会性特征。量子物理上有“电子云(electron cloud)”,在原子核周围运动的电子不是一个经验世界的轨道例如像天体一样的运行轨道,而是弥漫空间的、云状的存在,描述电子的运动不是牛顿经典力学而是一个概率分布的密度函数,用薛定谔波动方程来描述,特定的时间内粒子位于某个位置的概率有多大,这跟经典力学的提法完全不同。

  电子云有以下特性,概然性、弥漫性、同时性等等,云计算可能的确是来自电子云的概念,前今年就有所谓“无所不在的计算”,IBM有一个无所不在的计算叫“Ubiquitous “,MS(Bill)不久也跟着提出一个无所不在的计算“Pervade“,现在人们对无所不在的计算又有了新的认识,现在说是”Omnipresent “。但是,云计算的确不是纯粹的商业炒作,的确会改变信息产业的格局,现在许多人已经用上了Google Doc和Google Apps,用上了许多远程软件应用如Office字处理而不是用自己本地机器上安装这些应用软件,以后谁还会花钱买Office软件呢?还有许多企业应用如电子商务应用,例如要写一个交易程序, Google的企业方案就包含了现成的模板,一个销售人员根本没学习过Netbeanr也能做出来。这种计算和产业动向是符合开源精神的,符合 SaaS(Software as a Service)趋势。

  现在有这样的说法,当今世界只有五台计算机,一台是Google的,一台是IBM的,一台是Yahoo的,一台是Amazon的,一台是 Microsoft的,因为这五个公司率先在分布式处理的商业应用上捷足先登引领潮流。Sun公司很早就提出说“网络就是计算机”是有先见之明的。

http://hi.baidu.com/wjtao291/blog/item/1f8fceede9bc304979f05536.html
在windows下,一个文件有:创建时间、修改时间、访问时间。
而在Linux下,一个文件也有三种时间,分别是:访问时间、修改时间、状态改动时间。

两者有此不同,在Linux下没有创建时间的概念,也就是不能知道文件的建立时间,但如果文件建立后就没有修改过,修改时间=建立时间;如果文件建立后,状态就没有改动过,那么状态改动时间=建立时间;如果文件建立后,没有被读取过,那么访问时间=建立时间,因为不好判断文件是否被改过、读过、其状态是否变过,所以判断文件的建立时间基本上能为不可能。

如何查一个文件的三个时间呢?
先用下面的命令来建立一个文件
# date && echo "this is file be used test time of file" >filetime.txt && ll --full-time filetime.txt
Tue Aug 4 15:13:44 HKT 2009
-rw-r--r--    1 root     root           39 2009-08-04 15:13:44.000000000 +0800 filetime.txt

通过stat filename.txt来查,如:
# stat filetime.txt
File: `filetime.txt'
Size: 39              Blocks: 8          IO Block: 4096   Regular File
Device: 802h/2050d      Inode: 17          Links: 1  
Access: (0644/-rw-r--r--) Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-08-04 15:13:44.000000000 +0800
Modify: 2009-08-04 15:13:44.000000000 +0800
Change: 2009-08-04 15:13:44.000000000 +0800

说明:Access访问时间。Modify修改时间。Change状态改动时间。可以stat *查看这个目录所有文件的状态。
ctime=change time
atime=access time
mtime=modifiy time

因为这是一个新的文件(filetime.txt),没做过内容、属性的更改,也没读过这个文件,所以三者(访问时间、修改时间、状态改动时间)的时间是一致的,这时文件的修改时间与这三个时间是一样的,是没有疑问的。

1、访问时间,读一次这个文件的内容,这个时间就会更新。比如对这个文件运用 more、cat等命令。ls、stat命令都不会修改文件的访问时间。
2、修改时间,修改时间是文件内容最后一次被修改时间。比如:vi后保存文件。ls -l列出的时间就是这个时间。
3、状态改动时间。是该文件的i节点最后一次被修改的时间,通过chmod、chown命令修改一次文件属性,这个时间就会更新。

另个除了可以通过stat来查看文件的mtime,ctime,atime等属性,也可以通过ls命令来查看,具体如下:
ls -lc filename 列出文件的 ctime (最后更改时间)
ls -lu filename 列出文件的 atime(最后存取时间)
ls -l filename 列出文件的 mtime (最后修改时间)

在linux中stat函数中,用st_atime表示文件数据最近的存取时间(last accessed time);用st_mtime表示文件数据最近的修改时间(last modified time);使用st_ctime表示文件i节点数据最近的修改时间(last i-node's status changed time)。

字段           说明                  例子           ls(-l)
st_atime 文件数据的最后存取时间       read            -u
st_mtime 文件数据的最后修改时间       write           缺省
st_ctime 文件数据的最后更改时间       chown,chmod     -c


在linux系统中,系统把文件内容数据与i节点数据是分别存放的,i节点数据存放了文件权限与文件属主之类的数据。

另外,可以格式化输出文件的三种时间,如:
find . -name file -printf "%AY-%Am-%Ad %AH:%AM:%AS"
find . -name file -printf "%TY-%Tm-%Td %TH:%TM:%TS"
find . -name file -printf "%CY-%Cm-%Cd %CH:%CM:%CS"

linux的ctime代表的是文件修改时间,如果文件被修改过就很难知道文件的创建时间,在某些特殊情况下,需要查看文件的创建时间,正常情况下查看文件的ctime是无法实现的。可以使用一个变通的方法来实现保留文件创建时间,但是同时也会牺牲一些其它特性。

可以在mount文件的时候使用参数-o noatime,来把系统更新atime的特性关闭。使用了noatime参数挂载后,在文件被修改后文件的atime是不会被改变的,使用stat查看到的atime就是文件的创建时间。
如:
# / sbin/mkfs -t ext3 /dev/ram10
# mount -t ext3 -o noatime /dev/loop0 /mnt/foo
# mount
/dev/ram10 on /mnt/foo type ext3 (rw,noatime)
# cd /mnt/foo
# touch filetime1.txt
# stat filetime1.txt
File: `filetime1.txt'
Size: 0               Blocks: 0          IO Block: 4096   Regular File
Device: 10ah/266d       Inode: 12          Links: 1  
Access: (0644/-rw-r--r--) Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-08-04 20:51:32.000000000 +0800
Modify: 2009-08-04 20:51:32.000000000 +0800
Change: 2009-08-04 20:51:32.000000000 +0800

# echo foo.ok >> filetime1.txt
[root@logs-bak foo]# stat filetime1.txt
File: `filetime1.txt'
Size: 14              Blocks: 2          IO Block: 4096   Regular File
Device: 10ah/266d       Inode: 12          Links: 1  
Access: (0644/-rw-r--r--) Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-08-04 20:51:32.000000000 +0800
Modify: 2009-08-04 20:53:27.000000000 +0800
Change: 2009-08-04 20:53:27.000000000 +0800

# cat filetime1.txt
foo.ok
#stat filetime1.txt
File: `filetime1.txt'
Size: 14              Blocks: 2          IO Block: 4096   Regular File
Device: 10ah/266d       Inode: 12          Links: 1  
Access: (0644/-rw-r--r--) Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-08-04 20:51:32.000000000 +0800
Modify: 2009-08-04 20:53:27.000000000 +0800
Change: 2009-08-04 20:53:27.000000000 +0800

# 通过以上实验可以看出文件的access time 是不变的。

接着向下多测试一下.
# vi filetime1.txt
# stat filetime1.txt
File: `filetime1.txt'
Size: 23              Blocks: 2          IO Block: 4096   Regular File
Device: 10ah/266d       Inode: 14          Links: 1  
Access: (0644/-rw-r--r--) Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-08-04 20:55:05.000000000 +0800
Modify: 2009-08-04 20:55:05.000000000 +0800
Change: 2009-08-04 20:55:05.000000000 +0800

# chmod 777 filetime1.txt
# stat filetime1.txt
File: `filetime1.txt'
Size: 23              Blocks: 2          IO Block: 4096   Regular File
Device: 10ah/266d       Inode: 14          Links: 1  
Access: (0777/-rwxrwxrwx) Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-08-04 20:55:05.000000000 +0800
Modify: 2009-08-04 20:55:05.000000000 +0800
Change: 2009-08-04 20:57:36.000000000 +0800
可见,chmod后,Ctime的变化。

#########################################################
说到这里,大概大家也对在linux下文件的时间有所了解了吧!
那么以下的操作对文件的时间有什么影响呢?

操作                        atime        mtime       ctime
----------------------------------------------------------
mv
----------------------------------------------------------
cp
----------------------------------------------------------
touch
----------------------------------------------------------
cat/more/less
----------------------------------------------------------
ls
----------------------------------------------------------
chmod/chown
----------------------------------------------------------
ln
----------------------------------------------------------
echo
----------------------------------------------------------
vi
----------------------------------------------------------
(请大家测试完成这个表吧!!!!做完测试可以给我留言啊!)
##############################################################

另外,从kernel2.6.29开,还默认集成了一个relatime的属性。可能是因为在文件读操作很频繁的系统
中,atime更新所带来的开销很大,所以很多SA都在挂装文件系统的时候使用noatime属性来停止更新atime。但是有些程序需要根据atime进行一些判断和操作,所以Linux就推出了一个relatime特性。
使用这个特性来挂装文件系统后,只有当mtime比atime更新的时候,才会更新atime。事实上,这个时候atime和mtime已经是同一个东西了。所以这个选项就是为了实现对atime的兼容才推出的。并不是一个新的时间属性。使用方法就是通过mount -o relatime /dir来挂装目录。
route add -net  10.10.101.0  netmask 255.255.255.0 gw 10.10.100.1
cat route-eth0
10.10.101.0/24 via 10.10.100.1 dev eth0
/etc/rc.d/init.d/network restart
netstat -r
[root@1314it network-scripts]# cat /etc/sysconfig/network-scripts/route-eth0
123.123.123.0 via 156.156.156.156 dev eth0
[root@1314it network-scripts]#
已测试成功 重启网络会执行此文件
= = =
内网:有两个网段10.10.100.0/24和10.10.101.0/24,
服务器ip: a.b.c.d   外网网关e.f.g.h  服务器内网卡10.10.100.254
内网10.10.101.0/24网段的机器无法访问10.10.100.254这台机器。
登陆服务器查看路由表:
[root@www conf]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.10.100.0     *               255.255.255.0   U         0 0          0 eth0
169.254.0.0     *               255.255.0.0     U         0 0          0 eth1
default         e.f.g.h    0.0.0.0         UG        0 0          0 eth1
因此可以看到在10.10.100.254服务器上无法看到10.10.101.0/24的路由选择表路由条目,因此可以两种方法添加,
临时性的:
route add -net  10.10.101.0  netmask 255.255.255.0 gw 10.10.100.1
但重新启动后就会失效.因此在/etc/sysconfig/network-scripts/目录下建立文件。因为我们是做内网的路由,并且内网网卡为eth0,因此我们建立route-eth0文件如下:
[root@www network- ......
linux下想解压rar文件 必须安装软件,我使用到是rarlinux  
下面是下载地址
rarlinux官方网站下载地址
http://www.rarsoft.com/download.htm

安装                                      //tar.gz文件详细解压步骤
先解压tar.gz文件                  
直接 cd 到相应到文件夹
make                    // 如果提示权限不够 su root 取得最高权限
然后 make install

tar zxvf rarlinux-3.x.x.tar.gz

./configure &make &make install


恭喜你安装成功

最后
使用rarlinux解压rar文件
使用命令  

unrar e filesname.rar

解压rar文件
ok!~

============================================
rarlinux 使用(更多功能)

查看压缩包中的文档
$rar l XXX.rar 或 $rar v XXX.rar

查看压缩包中的文档(只看有什么文档)
$rar lb XXX.rar 或 $rar vb XXX.rar

查看压缩包中的文档(周详信息)
$rar lt XXX.rar 或 $rar vt XXX.rar

============================================
把压缩包的内容解压到当前目录
$rar e XXX.rar

把压缩包的内容解压到指定目录,比如/home/yxd/tmp/下面
$rar e XXX.rar /home/yxd/tmp/

把压缩包解的内容压到指定目录,比如/home/yxd/tmp/下面,包含压缩包中的路径
$rar x XXX.rar /home/yxd/tmp/

============================================
压缩指定的一个文档,比如aaa,以默认压缩率
$rar a XXX.rar aaa

压缩指定的一个文档,比如aaa,以最大压缩率
$rar a -m5 XXX.rar aaa

压缩指定的一个目录下的任何文档,比如ddd目录下的任何文档
$rar a XXX.rar ddd/

压缩指定的一个目录下的任何文档,比如ddd目录下的任何文档和任何子目录
$rar a -r XXX.rar ddd/

压缩指定的一个目录下的任何文档,比如ddd目录下的任何文档和任何子目录,但是不包含空目录
$rar a -r -ed XXX.rar ddd/

压缩指定的一个目录下的任何文档,比如ddd目录,连目录也一起压缩,包括子目录
$rar a XXX.rar ddd
目前,在web开发领域,主要的数据交换格式有XML和JSON,对于XML相信每一个web developer都不会感到陌生;相比之下,JSON可能对于一些新步入开发领域的新手会感到有些陌生,也可能你之前已经听说过,但对于XML和 JSON的不同之处可能会不怎么了解。对于在 Ajax开发中,是选择XML还是JSON,一直存在着争议,个人还是比较倾向于JSON的,虽然JSON才处于起步阶段,但我相信JSON最终会取代 XML成为Ajax的首选,到时Ajax可能要更名为Ajaj(Asynchronous JavaScript and JSON)了;

1.数据交换格式比较之关于XML和JSON:

XML:extensible markup language,一种类似于HTML的语言,他没有预先定义的标签,使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。具体的可以问Google或百度。相比之JSON这种轻量级的数据交换格式,XML可以称为重量级的了。

JSON : JavaScript Object Notation 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。

2.数据交换格式比较之关于轻量级和重量级:

轻量级和重量级是相对来说的,那么XML相对于JSON的重量级体现在哪呢?我想应该体现在解析上,XML目前设计了两种解析方式:DOM和SAX;

DOM是把一个数据交换格式XML看成一个DOM对象,需要把XML文件整个读入内存,这一点上JSON和XML的原理是一样的,但是XML要考虑父节点和子节点,这一点上JSON的解析难度要小很多,因为JSON构建于两种结构:key/value,键值对的集合;值的有序集合,可理解为数组;

SAX不需要整个读入文档就可以对解析出的内容进行处理,是一种逐步解析的方法。程序也可以随时终止解析。这样,一个大的文档就可以逐步的、一点一点的展现出来,所以SAX适合于大规模的解析。这一点,JSON目前是做不到得。

所以,JSON和XML的轻/重量级的区别在于:JSON只提供整体解析方案,而这种方法只在解析较少的数据时才能起到良好的效果;而XML提供了对大规模数据的逐步解析方案,这种方案很适合于对大量数据的处理。

3.数据交换格式比较之关于数据格式编码及解析的难度:

在编码上,虽然XML和JSON都有各自的编码工具,但是JSON的编码要比XML简单,即使不借助工具,也可以写出JSON代码,但要写出好的 XML代码就有点困难;与XML一样,JSON也是基于文本的,且它们都使用Unicode编码,且其与数据交换格式XML一样具有可读性。

主观上来看,JSON更为清晰且冗余更少些。JSON网站提供了对JSON语法的严格描述,只是描述较简短。从总体来看,XML比较适合于标记文档,而JSON却更适于进行数据交换处理。

在解析上,在普通的web应用领域,开发者经常为XML的解析伤脑筋,无论是服务器端生成或处理XML,还是客户端用 JavaScript 解析XML,都常常导致复杂的代码,极低的开发效率。

实际上,对于大多数web应用来说,他们根本不需要复杂的XML来传输数据,XML宣称的扩展性在此就很少具有优势;许多Ajax应用甚至直接返回 HTML片段来构建动态web页面。和返回XML并解析它相比,返回HTML片段大大降低了系统的复杂性,但同时缺少了一定的灵活性。同XML或HTML 片段相比,数据交换格式JSON 提供了更好的简单性和灵活性。在web serivice应用中,至少就目前来说XML仍有不可动摇的地位。

SAX
SAX是Simple API for XML,并不是由W3C官方所提出的标准,适用于处理数据流,即随着数据的流动而依次处理数据。是事件驱动的解析XML的API。
DOM
DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范(http://www.w3.org/DOM/),DOM是一种与浏览器,平台,语言无关的接口,使得你可以访问页面其他的标准组件。
http://www.json.org/json-zh.html
刚做完一个小的使用Ajax的项目。整个小项目使用Javascrīpt做客户端,使用PHP做服务器端、利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式。做完后基本做一个简单总结,简单分析一下使用XML作为传输格式的优劣。

[  XML ]
使用XML作为传输格式的优势:
1. 格式统一, 符合标准
2. 容易与其他系统进行远程交互, 数据共享比较方便

缺点:
1. XML文件格式文件庞大, 格式复杂, 传输占用带宽
2. 服务器端和客户端都需要花费大量代码来解析XML, 不论服务器端和客户端代码变的异常复杂和不容易维护
3. 客户端不同浏览器之间解析XML的方式不一致, 需要重复编写很多代码
4. 服务器端和客户端解析XML花费资源和时间


[ JSON ]
那么除了XML格式, 还有没有其他格式, 有一种叫做JSON (Javascrīpt Object Notation) 的轻量级数据交换格式能够替代XML的工作.

优点:
1. 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小
2. 易于解析这种语言, 客户端Javascrīpt可以简单的通过eval()进行JSON数据的读取
3. 支持多种语言, 包括Actionscrīpt, C, C#, ColdFusion, Java, Javascrīpt, Perl, PHP, Python, Ruby等语言服务器端语言, 便于服务器端的解析
4. 在PHP世界, 已经有PHP-JSON和JSON-PHP出现了, 便于PHP序列化后的程序直接调用. PHP服务器端的对象、数组等能够直接生JSON格式, 便于客户端的访问提取.
   另外PHP的PEAR类已经提出了支持 (http://pear.php.net/pepr/pepr-proposal-show.php?id=198)
5. 因为JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护

缺点:
1. 没有XML格式这么推广的深入人心和使用广泛, 没有XML那么通用性
2. JSON格式目前在Web Service中推广还属于初级阶段

PS: 据说Google的Ajax是使用 JSON+模板 做的

XML 是一种用于面向服务的体系结构 (SOA) 和数据传输的常见传输。当然,目前许多服务以 SOAP 格式存在。不过,何时将其用于数据传输在 Ajax 社区中存在分岐。

[  XML ]
使用XML作为传输格式的优势:
1. 格式统一, 符合标准
2. 容易与其他系统进行远程交互, 数据共享比较方便
3.调用将 XML 用作传输的现有服务。
4.使用 XSLT 可以动态转换 XML。这是企业服务总线 (ESB) 方案中的理想功能。

缺点:
1. XML文件格式文件庞大, 格式复杂, 传输占用带宽
2. 服务器端和客户端都需要花费大量代码来解析XML, 不论服务器端和客户端代码变的异常复杂和不容易维护
3. 客户端不同浏览器之间解析XML的方式不一致, 需要重复编写很多代码
4. 服务器端和客户端解析XML花费资源和时间


[ JSON ]
那么除了XML格式, 还有没有其他格式, 有一种叫做JSON (JavaScript Object Notation) 的轻量级数据交换格式能够替代XML的工作.

优点:
1. 数据格式比较简单, 易于读写, 格式都是压缩的, 占用带宽小,浏览器解析快
2. 易于解析这种语言, 客户端JavaScript可以简单的通过()进行JSON数据的读取
3. 构造友好,支持多种语言, 包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等语言服务器端语言, 便于服务器端的解析
4. 在PHP世界, 已经有PHP-JSON和JSON-PHP出现了, 便于PHP序列化后的程序直接调用. PHP服务器端的对象、数组等能够直接生JSON格式, 便于客户端的访问提取.
   另外PHP的PEAR类已经提出了支持
5. 因为JSON格式能够直接为服务器端代码使用, 大大简化了服务器端和客户端的代码开发量, 但是完成的任务不变, 且易于维护
6.相当稳定。JSON 的附加内容将成为超集。

缺点:
1. 没有XML格式这么推广的深入人心和使用广泛, 没有XML那么通用性
2. JSON格式目前在Web Service中推广还属于初级阶段

   个人总结:  XML 或是JSON  可以视情况使用,  一个项目在特定情况下可以同时使用这两种格式.

    不过本并不建议如此来做, 因为这种方式可能会给整个项目的代码管理带来麻烦.还需慎重!
疯狂代码 http://CrazyCoder.cn/ ĵ:http:/CrazyCoder.cn/Security/Article73026.html
什么是SOA?“SOA(Service Oriented Architecture面向服务架构)是种新面向服务架构编程模型号称
“下代软件Software架构”SOA由Gartner在1996年提出到了2002年12月Gartner又提出了SOA是“现代应用
开发领域最重要课题”并预计到2008年SOA将成为占有绝对优势软件Software工程实战思路方法 ;SOA就是
服务集合从软件Software和业务功能两方面观点看服务就是定义良好软件Software组件它不依赖于任何它应用
上下文或状态
在技术上定义这些服务以及它们到应用接口然后实现这些服务是SOA核心部分.这些服务通常被实现为Web
Services应用可以通过简单对象访问协议(Simple Object Access ProtocolSOAP)来访问它基于HTTP协议以
XML形式进行传输.
从根本上说SOA是服务接口种流和种关系设计接口及其关系需要熟练掌握Web技术、业务流程和服务下技术平
台以及采用它们应用等方面知识架构师不仅必须了解如何构造Web服务而且还要了解现有应用和计划未来使用
应用如何使用它们

;
SOA和Web Services是比较大概念是种规范标准(封装服务和提供服务规范标准)它们降低了后台如何运行重要
程度你可以用区别编程语言和平台来并实现SOA和Web Services甚至有人由此预计 5年后JavaEE不再是主流标
准设计模型Java EE太过复杂很显然如果我用简单方式也可以实现SOA那么为什么要用Java EE呢?这就是平台
力量平台影响力总是大于应用JavaEE是个小平台(对于般开发而言它已经是个非常大平台但是技术和需要总是在
不断发展)而SOA是个大平台从面向过程面向对象面向组件和面向业务各种编程模型目前JavaEE大部份时候是在
面向组件和面向业务的间而SOA是面向业务应该说对于企业应用非常有优势
;
目前IBM可以说是SOA主宰力量我们可以看到它甚至在PHP方面也在大力推广SOA(IBM、Oracle 尝试把PHP
应用到SOA 的中)足见其野心的大
;
我们看看IBM在PHP SOA方面进展:
2005.7 IBM用PHP实现SDO并提交到PHPPECL库
2005.12 IBM联合BEA、Oracle、IONA、SAP、Siebel、Sybase、Xcalia以及Zend公司共同发布了两项针对
SOA重要编程模型规范标准——SCA(Service Component Architecture)和SDO(Service Data Object) ; ;注意
包括Zend公司Zend和PHP关系就类似于Sun和Java ; ; ; ; ; ; ;
2006.3 PHP SDO v1.0.0发布2006.9 PHP SDO v1.0.4发布
2006.9 PHP SCA v0.1.0发布
;详情请参看:
SOA PHP Homepage

SOA和PHP

WEB2.0 jackxiang 2010-1-6 11:53
什么是SOA?

SOA(Service Oriented Architecture,面向服务的架构)是一种新的面向服务架构的编程模型,号称“下一代软件架构”。SOA由Gartner在1996年提出的,到了2002年12月,Gartner又提出了SOA是“现代应用开发领域最重要的课题”,并预计到2008年,SOA将成为占有绝对优势的软件工程实践方法。

SOA就是服务的集合。从软件和业务功能两方面的观点看,服务就是定义良好的软件组件,它不依赖于任何调用它的应用程序的上下文或状态。

在技术上,定义这些服务以及它们到应用程序的接口,然后实现这些服务,是SOA的核心部分.这些服务通常被实现为Web Services,应用程序可以通过简单对象访问协议(Simple Object Access Protocol,SOAP)来访问它,基于HTTP协议以XML的形式进行传输.

从根本上说,SOA是服务接口的一种流和一种关系,设计接口及其关系需要熟练掌握Web技术、业务流程和服务下的技术平台以及采用它们的应用程序等方面的知识。架构师不仅必须了解如何构造Web服务,而且还要了解现有应用程序和计划未来使用的应用程序如何使用它们。




SOA和Web Services是比较大的概念,是一种规范(封装服务和提供服务的规范),它们降低了后台程序如何运行的重要程度。你可以用不同的编程语言和平台来并实现SOA和Web Services。甚至有人由此预计五年后JavaEE不再是主流的标准程序设计模型,因为Java EE太过复杂。很显然,如果我用简单的方式也可以实现SOA,那么为什么要用Java EE呢? 这就是平台的力量,平台的影响力总是大于应用,JavaEE是个小平台(对于一般的开发而言,它已经是个非常大的平台,但是技术和需要总是在不断发展的),而SOA是个大平台。从面向过程,面向对象,面向组件和面向业务各种编程模型,目前JavaEE大部份时候是在面向组件和面向业务之间,而SOA是面向业务,应该说对于企业应用非常有优势。



目前IBM可以说是SOA的主宰力量,我们可以看到它甚至在PHP方面也在大力推广SOA(IBM、Oracle 尝试把PHP 应用到SOA 之中),足见其野心之大。



我们看看IBM在PHP SOA方面的进展:

2005.7 IBM用PHP实现SDO并提交到PHP的PECL库

2005.12 IBM联合BEA、Oracle、IONA、SAP、Siebel、Sybase、Xcalia以及Zend公司,共同发布了两项针对SOA的重要编程模型规范——SCA(Service Component Architecture)和SDO(Service Data Object)。  注意,包括Zend公司。Zend和PHP的关系,就类似于Sun和Java。      

2006.3 PHP SDO v1.0.0 发布
2006.9 PHP SDO v1.0.4 发布
2006.9 PHP SCA v0.1.0发布

详情请参看:

SOA PHP Homepage



其实单独地说PHP中的SOA并不是一件很有意义的事,因为那只不过是一个Java的移植,以现在PHP5的面向对象编程模型,基本上已经足够胜任,甚至有些方面更方便,因为PHP是弱类型和动态类型的语言(Type Juggling),在实现SDO时,写代码不用像Java那么烦琐(不需要写那么多geter/seter)。但是实现之后,能否推广起来?这种“抽象、松散耦合和粗粒度”的软件架构能否真正被接受?

光靠IBM的力量(可能还有Oracle、Zend)来发展PHP SOA,可以说是没有可能成功的。当然话又说回来,如果SOA发展很好,PHP SOA也一定会流行起来,也会有更多技术厂家加入。一个技术能否被接受,能否流行,很多情况下还是要看大环境。
来源:http://hexun.com/wei_hj
方圆之大,大至无极,按说方圆不是子曰提之辈可妄谈。

但是,方圆就在我们身边,或可说我们就在方圆之内,如此,又不得不谈。所以文题《也说“方圆”》,为了不必冲突了各流派大师的学说和理论。当然,我也可以更名《野说“方圆”》或者《胡说“方圆”》,给自己一个胡说话的理由,说着玩不算数的。

孟子曰:“离娄之明,公孙子之巧,不以规矩,不能成方圆。”规,指正圆之器;矩,指正方之器;无矩不成方,无规不成圆;校正方圆,是谓规矩。若如此理解规矩尚可接受,理解方圆,显然是狭隘了些的。

圆是自然,或天然的。圆也是最稳定的,受外部力限制最小形状。早些时候的人使用火枪,枪弹就是若干铁砂或铅砂。把铁或铅这些金属熔化成液体,滴到水里,就自然地冷却成圆球形的枪砂了。电视里播的药品广告这滴丸那滴丸,制法也大抵如此。

圆是最普遍的轨迹。假如咱到哪里都有免费的汽油和维修站,不妨一直想前开,结果总能开回出发地完成一个圆的轨迹。地球围绕太阳,月球围绕地球,乃至电子围绕原子核的运动轨迹也是圆的。这些轨迹之园都是缘于牛顿发现的“万有引力定律”,而这个定律的发现恰巧是苹果和牛顿得脑袋这两个圆球的碰撞造成的。

回头在看看我们的身体,头是圆的,眼球是圆的,四肢和躯干也是接近圆柱状的。如果你发现谁的胳膊是方的,排除义肢的可能后,你可以判定它是个低等的机器人。以后连机器人的胳膊也是圆的哦。

圆还是目标和结果,达成目标的结果叫圆满;终于和一个异性合理合法地睡在一起早前叫做圆房;老和尚念了一辈子佛去佛主那里汇报工作叫圆寂。我们面向靶标射去的最好一枪被报把员赞叹为十环。环者,圆圈也。

什么都是圆,方有何用?

方的用途大了,无方不成圆。

说圆是目标和结果,方就是把目标变成结果的手段,这些手段又叫做“方”法、“方”式、“方略”。

古钱,多形圆孔方(刀币的不算),以至于现在还有人称爱钱者之钱为“孔方兄”。其实孔方之方既可以便于铸币脱模又可以聚钱成串,实在是解决了从生产到储藏到流通的一系列问题。此一方不是也恰恰为每一元钱提供了方法吗?(绝密:子曰提统计,富人习惯说“一元钱”,穷人多说“一块钱”)

古人讲“天圆地方”,我的理解很朴素,那就是他们对天地形状的直观而局限的理解。现在人从道、德,甚至地外生命的角度所加以的诠释俺因为听不懂而不加附会了。但由此演化的“外圆内方”我是愿意接受的。

内方指的是内部约束,包括个人和组织的自我约束,这种约束行为或规定的方法是为了达成某一个特定的目标。

外圆可以指我们对外界的态度,这个态度要开放,要包容,要变化,不能墨守成规。反过来说,我们做人或者做事要边界圆滑,易于被接受,这个圆滑不是阿谀奉承,偷奸耍滑的意思。

又所谓“智圆行方”,知识要广博周备,行事要方正不苟。“智圆”可以使人确认做正确的事情,“行方”让人能够把事情做好。如此看来“方”、“圆”的确是两个层面的概念了。

“严以律己,宽以待人”在特定的情形下是有道理的,在这句话有道理的前提下,是不是可以说方为严,圆为宽呢?
永遇乐①

京口北固亭怀古②


此主题相关图片如下:
按此在新窗口浏览图片

【宋】辛弃疾

千古江山, 英雄无觅, 孙仲谋处。③
舞榭歌台, 风流总被、 雨打风吹去。
斜阳草树, 寻常巷陌, 人道寄奴曾住。④
想当年, 金戈铁马, 气吞万里如虎。⑤

元嘉草草, 封狼居胥, 赢得仓皇北顾。⑥
四十三年, 望中犹记,烽火扬州路。⑦
可堪回首, 佛狸祠下, 一片神鸦社鼓。⑧
凭谁问, 廉颇老矣, 尚能饭否。⑨



【作者】

1140-1207,字幼安,号稼轩,历城(今山东济南)人。少年是曾聚众参加耿京的抗金义军。渡江南归后,历任湖北、江西、湖南、福建、淅东安抚使等职。一生力主抗金,屡陈恢复大计,因而颇遭当权者之忌,曾长期落职闲居于江西上饶一带。宁宗开禧年间,曾知镇江府,不久又被罢黜。其词与苏轼齐名,多抒写报国雄心和有志不伸的感慨,豪纵奔放,沉郁悲壮,在南宋爱国词中领袖一代。有《稼轩长短句》、《稼轩词》。

【注释】

①此调又名《消息》。上下阕,一百○四字,有平韵、仄韵两体。平韵体始见于柳永《乐章集》,仄韵体则是南宋陈允平所创制。
②京口:今江苏镇江。晋蔡谟筑楼北固山上,称北固亭。
③孙权,字仲谋。建安十三年 (208)孙权迁都京口。“舞榭歌台”指孙权故宫。
④宋武帝刘裕小字寄奴,生于京口,家境贫穷,故云“寻常巷陌”。
⑤指义熙十二年(416)刘裕督军北伐后秦,收复洛阳、长安。
⑥元嘉二十七年(450),宋文帝刘义隆命王玄谟北伐,为后魏击败。封:筑台祭天。汉霍去病追击匈奴至内蒙西北之狼居胥山,封山而还。刘义隆尝听王玄谟谈论北伐,感到“使人有封狼居胥意”。“北顾涕交流”,则是他于兵败滑台后写的诗。
⑦开禧元年(1205)辛弃疾出守京口,上距绍兴三十二年率众南归,前后四十三年。“路”,宋代行政区域名,相当于现代的“省”。

⑧佛狸(bi li)祠在今江苏六合瓜步山上。佛狸为北魏太武帝跖跋焘小字。元嘉二十七年,他追击宋军至长江北岸的瓜步。
⑨廉颇是战国时赵国名将,被谗入魏。赵王有意起用,遣使问讯。廉颇一饭斗米,肉十斤,披甲上马,以示能战。使者回来谎报赵王说:“与臣坐,顷之三遗矢(多次拉屎)矣。”赵王以为老,遂罢。否:音读如“釜“。

【品评】

上片追念起于京口建立功业的孙权、刘裕。孙权坐镇江东,北响抗衡。刘裕北伐一战而复青州,再战而复关中,辛弃疾都深为仰慕。下片“元嘉草草”数句针对韩侂正在策划的北伐行动。冒险轻敌,必然招致失败,结果反让佛狸饮马长江,血食至今。次年韩侂胄伐金败绩,果为辛弃疾不幸言中。辛弃疾这年六十六岁了,篇末以廉颇自比,感叹弃置不用。这首词怀古抚今,以词论政,是其特色。
词中提到几次南北战争,全是几万、几十万人的大战,都不过用了三四句,或正面铺张(金戈铁马),或反面衬托(仓皇北顾),或用亲身经历(烽火扬州路),或借前代遗迹(佛狸祠),境界全出而色彩各异,象一幕幕历史场景在我们面前轮转变换。全词情调回旋起伏。
上片怀念孙权,惋惜时光的流逝,又赞美功业的不灭。下片回顾历史创伤和个人处境,热切的期待又为无可奈何的悲愤。有人认为此词用典太多。但作为怀古词不能不涉及众多史事。陈廷焯谓其“以浩气行之”,“不嫌其堆垛”。以廉颇自比,这个典就用得很贴切,既表现了他老当益壮、临阵思战的凌云壮志,又点明了他屡遭谗毁、投闲置散的实际遭遇,同他的心情、身份都有一致之处,含义也就更加深刻了。明代杨慎说这首《永遇乐》为稼轩词中第一,殆非虚语。
祈祷者问牧师:“我祈祷的时候可以吸烟吗?”

牧师答:“那怎么可以?也太不虔诚了吧!你简直是亵渎神灵。”

“那,我吸烟的时候可以祷告吗?”

“真的?你连吸烟的时候都在祷告吗?你太虔诚了,上帝保佑你!”



甲:“你一个月出差25天,你夫人会不会担心你在外面的行为?”

乙:“我考虑的不是这个问题,我的担心是我老婆会不是耐得住寂寞。”



一个渔民,占据地利,只有他的一片小海湾等够钓到一种名贵的鱼。

渔民每天钓10斤鱼,卖掉,然后躺在沙滩上喝酒,享受日光浴。

一个投资者看到了这种名贵鱼的市场,来找渔民,说:“我可以给你投一大笔钱,我们成立一个公司,钓很多的鱼,让你赚到很多钱。”

渔民问:“我赚很多钱干什么?”

“你可以不用再钓鱼,你可以每天躺在沙滩上喝酒,享受日光浴!”

渔民反问“我现在就可以躺在沙滩上喝酒,享受日光浴。何必搞得那么复杂?”



妻子:“我每天无微不至得关心你,你就感觉不到吗?”

丈夫:“我感觉得到,如果你不是这样‘无微不至’我的感觉会更好。”



朋友:“我现在最担心的问题是我的太太会得抑郁症。”

另一个朋友:“你可以问她最喜欢什么,然后满足她。”

朋友:“问过了,她不知道喜欢什么。”

另一个朋友:“这是最严重的问题。”

我:“这不是最严重的问题,最严重的问题是她回答‘我只喜欢你’”
分页: 212/339 第一页 上页 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 下页 最后页 [ 显示模式: 摘要 | 列表 ]