« November 2004 | 首页

1 2 3 4 5 6 7 8 9 10 11 12 13 (Page 10 of 13)



| January 2005 »

《杜鹃蛋》(The Cuckoo's Egg)

这两天在阅读 Practical Unix & Internet Security 这本经典之作(简介)。在该书的第二十二章 Discovering a Break-in 第二节中提到了这样一段:

See Cliff Stoll's The Cuckoo's Egg (Pocket Books) for the tale of how such a discrepancy led to his discovery of an attacker's activities.

看到这一段的时候,心里忽然一动,前几天刚好下载了一个名为《杜鹃蛋》的文档,还没来得及看,打开一看,果真是这本书的中文版。

Cliff Stoll 在书中是个天文学工作者,和一些科学家共事,偶然间发现的一笔帐务的小问题,把主人公卷入到追踪黑客的事件。整个过程破朔迷离、错综复杂,作者宛如剥茧抽丝,带领读者步入一个真正的黑客世界中。

那隐匿在网络背后的黑客是谁?

耐人寻味的是,黑客居然是通过 GNU-emacs 的漏洞侵入到天文学家们的系统中(Richard Stallman 在那个时候还没有达到被人仰视的地步)。在小说里,可以看到 VAX 、 VMS 、1200波特、漏洞百出的新生儿 Unix、Arpanet、那个特定历史时期的意识形态、伯克利文化......以及最为人着迷的早期网络世界。

小说的最后作者是用著名的莫里斯(Robert T. Morris)蠕虫事件作为结尾。这时候,主人公已经成为一个标准的黑客级人物了。

中文版看样子是国内某著名论坛(CCF?)的人翻译的,译者似乎对Unix文化不是很熟悉,很多术语翻译的不好,还有很多地方我觉得保留英文会更好一些。嗯,有机会看英文版是最棒的了。

Red Hat 电子杂志第二期

今天收到 Red Hat 的通知邮件,电子杂志出了第二期。

这一期最有意思的内容应该是作为公司创建人之一的 Bob Young 回顾 How Red Hat Got Its Name 。"Red Hat"这个名字的由来居然有三个版本的。

  • 1: Red hats, a symbol of liberty throughout civilization.
  • 2: Marc Ewing inherits his grandfather's Cornell lacrosse cap, names a software project after it.
  • 3: With a reputation for fixing friends' computers at Carnegie Mellon, Marc Ewing is known as the “guy in the red hat.”
我选择了第 3 项。不过 2 好像人情味一些。

技术内容都有哪些? Better Living Through RPM 到了第二篇。这一篇介绍了关于 RPM 的一些深入的内容。From Source to Binary: The Inner Workings of GCC 深入讲述 GCC 。另外我感兴趣的文章还有 Configuring Devices with udev

值得一提的是 Tips & Tricks 这个小栏目。这一期内容包括:什么是 initscript ,如何设定 MTU ,LD_ASSUME_KERNEL 的解释等。更多文章...还没看完。

要订阅电子杂志只需要在该页面输入自己的邮件地址即可。

什么时候能出纸版的杂志就更棒了。

December 16, 2004

ORA-32004 与 Deprecated 参数

在 Oracle 10g 中,以前熟悉的一些参数已经 deprecated 了,有的时候很烦人。

SQL> STARTUP;
ORA-32004: obsolete and/or deprecated parameter(s) specified
ORACLE instance started.

Total System Global Area  213909504 bytes
Fixed Size                   778156 bytes
Variable Size             128983124 bytes
Database Buffers           83886080 bytes
Redo Buffers                 262144 bytes
Database mounted.
Database opened.
SQL>
SQL> host oerr ora 32004
32004, 00000, "obsolete and/or deprecated parameter(s) specified"
// *Cause:  One or more obsolete and/or parameters were specified in
//          the SPFILE or the PFILE on the server side.
// *Action: See alert log for a list of parameters that are obsolete.
//          or deprecated. Remove them from the SPFILE or the server
//          side PFILE.
SQL>

告诉我们去 alert log 中查看信息。查找...

Deprecated system parameters with specified values:
  log_archive_start
End of deprecated system parameter listing

oops ,10g 不支持该参数了? 原来在 10g 中,当打开归档模式(archive log mode) ,则 ARCH 进程被隐性的自动设定。10g 中也就不会出现 9i 以前那种数据库已经在归档模式,但是自动归档没有被设定的情况了。这也算是 Oracle 修正的一个小Bug。如果是从 9i 升级到 10g 的话,不注意可能会有点小问题的。要解决该问题,需要重置 log_archive_start 参数。

SQL>ALTER SYSTEM RESET log_archive_start SCOPE=SPFILE SID='*';
System altered.

SQL> SHUTDOWN immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP
ORACLE instance started.

Total System Global Area  213909504 bytes
Fixed Size                   778156 bytes
Variable Size             128983124 bytes
Database Buffers           83886080 bytes
Redo Buffers                 262144 bytes
Database mounted.
Database opened.
SQL>

It's OK now. 查看一下 10g 中都有那些参数是 deprecated 的:

SQL> SELECT NAME, description
  2    FROM v$parameter
  3   WHERE isdeprecated = 'TRUE';

NAME                      DESCRIPTION
------------------------- -----------------------------------------------------------------
lock_name_space           lock name space used for generating lock names for standby/clone
                          database

buffer_pool_keep          Number of database blocks/latches in keep buffer pool
buffer_pool_recycle       Number of database blocks/latches in recycle buffer pool
log_archive_start         start archival process on SGA initialization
parallel_server           if TRUE startup in parallel server mode
parallel_server_instances number of instances to use for sizing OPS SGA structures
fast_start_io_target      Upper bound on recovery reads
max_enabled_roles         max number of roles a user can have enabled
global_context_pool_size  Global Application Context Pool Size in Bytes
plsql_compiler_flags      PL/SQL compiler flags
parallel_automatic_tuning enable intelligent defaults for parallel execution parameters
drs_start                 start DG Broker monitor (DMON process)

12 rows selected.

SQL>

参数替代情况

Deprecated parameters in release 10g: 
------------------------------------------------ 
 
BUFFER_POOL_KEEP (replaced by DB_KEEP_CACHE_SIZE) 
BUFFER_POOL_RECYCLE (replaced by DB_RECYCLE_CACHE_SIZE) 
PLSQL_COMPILER_FLAGS (replaced by PLSQL_CODE_TYPE and PLSQL_DEBUG) 
DRS_START (replaced by DG_BROKER_START) 
FAST_START_IO_TARGET (replaced by FAST_START_MTTR_TARGET) 
MTS_CIRCUITS (replaced by CIRCUITS) 
MTS_DISPATCHERS (replaced by DISPATCHERS) 
MTS_MAX_DISPATCHERS (replaced by MAX_DISPATCHERS) 
MTS_MAX_SERVERS (replaced by MAX_SHARED_SERVERS) 
MTS_SERVERS (replaced by SHARED_SERVERS) 
MTS_SESSIONS (replaced by SHARED_SERVER_SESSIONS) 
PARALLEL_SERVER (replaced by CLUSTER_DATABASE) 
PARALLEL_SERVER_INSTANCES (replaced by CLUSTER_DATABASE_INSTANCES) 
 

废弃的参数:

Obsolete parameters in 10g: 
--------------------------------------- 
 
DBLINK_ENCRYPT_LOGIN 
HASH_JOIN_ENABLED 
LOG_PARALLELISM 
MAX_ROLLBACK_SEGMENTS 
MTS_CIRCUITS 
MTS_DISPATCHERS 
MTS_LISTENER_ADDRESS 
MTS_MAX_DISPATCHERS 
MTS_MAX_SERVERS 
MTS_MULTIPLE_LISTENERS 
MTS_SERVERS 
MTS_SERVICE 
MTS_SESSIONS 
OPTIMIZER_MAX_PERMUTATIONS 
ORACLE_TRACE_COLLECTION_NAME 
ORACLE_TRACE_COLLECTION_PATH 
ORACLE_TRACE_COLLECTION_SIZE 
ORACLE_TRACE_ENABLE 
ORACLE_TRACE_FACILITY_NAME 
ORACLE_TRACE_FACILITY_PATH 
PARTITION_VIEW_ENABLED 
PLSQL_NATIVE_C_COMPILER 
PLSQL_NATIVE_LINKER 
PLSQL_NATIVE_MAKE_FILE_NAME 
PLSQL_NATIVE_MAKE_UTILITY 
ROW_LOCKING 
SERIALIZABLE 
TRANSACTION_AUDITING 
UNDO_SUPPRESS_ERRORS 
DISTRIBUTED_TRANSACTIONS 
MAX_TRANSACTION_BRANCHES 
PARALLEL_BROADCAST_ENABLED 
STANDBY_PRESERVES_NAMES 
ALWAYS_ANTI_JOIN 
ALWAYS_SEMI_JOIN 
DB_BLOCK_LRU_LATCHES 
DB_BLOCK_MAX_DIRTY_TARGET 
DB_FILE_DIRECT_IO_COUNT 
GC_DEFER_TIME 
GC_RELEASABLE_LOCKS 
GC_ROLLBACK_LOCKS 
HASH_MULTIBLOCK_IO_COUNT 
INSTANCE_NODESET 
JOB_QUEUE_INTERVAL 
OPS_INTERCONNECTS 
OPTIMIZER_PERCENT_PARALLEL 
SORT_MULTIBLOCK_READ_COUNT 
TEXT_ENABLE 

December 15, 2004

Web技术:易趣 vs 淘宝 (2)

上一篇文章中,我大着胆子对易趣和淘宝这两个站点进行了一下片面的比较。总觉得还有好多没有说到的地方。在这篇短文里,将继续说点值得一提的内容。

上次漏掉的内容首先要说说站点弹出广告(页面)。易趣的站点没有弹出广告。而淘宝的首页是有弹出页面的。这个差别很有趣。现在国内站点的流量基本都参考 Alexa 的站点排名。用户访问首页的时候,如果一下弹出两个页面的话,会算作两个页面的( Alexa 工具条默认是阻止弹出广告的,我这里的说法似乎有些矛盾,因为据说 Alexa 的排名只根据安装了 Alexa Toolbar 的用户访问行为做的)。当然,微软的 Windows SP 2 出来之后,弹出页面用处就不大了。Google 是非常反对弹出广告的。因为Google "find them annoying"。更多的信息请参考 Google 的 No pop-ups 原则。 。

酒香也怕巷子深,现在国内很多站点都非常热衷于 SEO ,不要忘了 SEO 的目的是什么,如果只是一味的为了在搜索引擎中取得个好名次是仅仅不够的,一个站点不管到什么时候,还是内容为王。我个人认为国内的 SEO 针对的关键字排名对于小型的专业商用站点来说是比较重要的(我的一派胡言),大型站点的话,还要看搜索引擎所能检索的深度与广度。在 Google 中输入 site:www.taobao.com 看看结果如何? 得到的是 “718 项符合的查询结果”,对易趣进行的如此的操作呢? 在Google里输入site:www.eachnet.com ,结果约有 364,000 项符合的查询结果(这还没有加上www.ebay.com.cn的19项)。这个结果实在是令我太惊讶了,二者之间竟然有如许差别!?? 也就是说,淘宝站点内容没有被 Google 有效的挖掘。在内容的深度上被易趣抛在了后面。

带着疑问,继续看看各自的反向连接(广度)。输入 link:http://www.ebay.com.cn 我们得到:约有58,700 项链接到 http://www.ebay.com.cn/ (www.ebay.com.cn 和 www.eachnet.com 结果相同,都是58,700),输入link:http://www.taobao.com/ ,得到:约有 40,700 项链接到 http://www.taobao.com/ 。考虑到 ebay 是个国际化的站点,淘宝作为一个后来着,反向连接(广度)和易趣可以说差别不大。以上的查询结果时间为 2004 年 12 月15 日,结果会有一点点误差。

搜索引擎收录的内容可能是这两个站点之间非常显著的差异。这个结果会对一个网站有什么影响?我举个例子,比如两个大型商场,分别出了很多产品目录,在一个人多的地方(比如火车站),发给用户,用户发现第一家的产品目录上内容丰富,玲琅满目,而第二家呢,可能是印刷厂搞的鬼,也可能其他原因,只有少数的几样东西,那么用户可能在查找了产品目录之后直奔第一家商场了。当然,第二家也可以通过其他手段,比如雇一些人在火车站守候,直接把客户拉过去(线下的常规媒体广告)。话说回来,如何增加搜索引擎对站点内容的挖掘能力? 说白了是很简单的事情。不说也罢。

如果研究一下这两个站点的 CSS,会发现 CSS字体的定义都很粗糙。因为都是以"宋体"为主,当遇到英文字体的时候,看起来界面都有些粗糙。这从一定程度上削弱了站点内容的表现力。我认为一个大型站点,起码要在字体上加点考虑,毕竟你面对的庞大的客户群体。

从现在看,这两个站点都没有提供 Web Service ,而国际上的个别电子商务站点(比如 Amazon)已经走在前面了。这两个站点目前也都没有提供 RSS,我发现 RSS 对于 C2C 类型的站点有非常好的亲和力。用户可以选择订阅相关产品的 RSS,便于更快速的获取产品信息。

谁将是最后的胜者,一切还在变化之中。

参考信息


本站相关标签|Tags Cloud