• 首页
  • 关于我们
  • 招聘职位
  • 企业博客
  • 联系我们
EN

既生瑜何生亮:FreeBSD与Linux再比较      文章属于:设计开发

原贴:http://www.phpchina.com/8051/viewspace_8240.html
传说中FreeBSD比linux稳定,大型网站几乎都建立在FreeBSD系统上,我一直疑惑难道linux是否真的不能做大型网站。于是用netcraft网站做了个测试:
http://toolbar.netcraft.com/site_report?url=www.phpchina.com
按照上面的链接你就可以查询任何一个网站的服务器架构,当然,可信度和准确度我不能保证。下面是我测试的案例:
www.phpchina.com清一色linux;
www.tencent.com清一色linux;
www.qq.com清一色linux;
www.taobao.com linux;
www.ebay.com.cn 查询显示OS清一色linux,WebServer清一色IIS,令人费解;
www.alibaba.com 清一色linux;
www.bokee.com清一色的linux;
www.google.com清一色linux;
www.pconline.com.cn linux;
www.yninfo.com清一色的linux;
www.tom.com 清一色Debian;
www.cctv.com linux+sun的服务器;
www.126.com 清一色linux
www.163.com清一色linux,大家或许都认为网易是使用FreeBSD的,
但163/126就全部用上了linux,令人费解。
看来用linux做大站的也不少啊!!!谁说linux不能做大站呢?
另外又发现两个奇怪的东东:
www.ebay.com 居然清一色的win2000!!!
http://www.myspace.com 全美访问量第一,居然也清一色的win2003;
在我印象中,大型网站是压根不能用windos系统的。但这两个案例给我的理论一个有力的回击:系统稳定与否,关键还是在人!
无论是Windows还是FreeBSD还是Linux都可以做大型网站,只要人足够牛X就行。这里不谈windows了,还是从大家口水仗打得最厉害的linux和freebsd分析分析吧。
首先说明一点:为什么不拿linux和windows比较,而只是和freebsd比较呢?答案在于linux或是freebsd都感觉到了对方带来的压力,都认定对方是自己的竞争对手。既然称得上是对手,自然是各有所长,难分轩轾,谁也不能把谁压倒罢了。
论坛里争论FreeBSD和linux谁谁更好,其实是从一个静态的角度来看的,在某个特定时间里,FreeBSD或许比linux更稳定,linux或 许比FreeBSD更快捷,但两家都在动态发展,没有谁永远领先,没有谁永远落后,FreeBSD稳定的特性,Linux2.6可以超越它;而linux 快捷的优势,FreeBSD也会迅速居上。我就不信,linus和他的黑客团队在技术上会输给学院派的FreeBSD团队?或者FreeBSD的高手们比不上一群黑客,?他们谁都可以暂时领先,谁都可以暂时落后,但谁都不是吃干饭的!
目前流行这么一种传说:linux和freebsd内核性能上相比:linux2.2比freebsd要差,linux2.4和freebsd难分伯仲, 而linux2.6比freebsd好得多。这里freebsd被静态化了,以一个动态发展的linux去比较某个固定版本的freebsd,显然是有失 公平的。有道是:士别三日,即更刮目相看,更何况是技术日新月异的IT行业!
又有这么一种说法:LINUX被黑的多而FreeBSD被黑的少,盖出于安全性较逊?这也是无稽之谈,用liunx的人基数比freebsd大,菜鸟自然也就更多了。系统安不安全关键在人,如果你不信,可以尝试去黑一下www.ebay.com或www.myspace.com,他们的服务器可都是windows哟。
其实两家最根本的差别不在技术,而在于设计理念:linux不求最稳,但求最新;FreeBSD不求最新,只求最稳——这样说也许不对,但也能反映一些问题。
我对FreeBSD与Linux比较的最终结论是:谁好谁稳定都只是暂时的,两家的存在状态,是一个“既生瑜何生亮”的问题,在长久的发展过程中,技术 上的常胜将军并不存在,双方只有此消彼长,各领风骚。至于大家为什么非要证明FreeBSD比Linux好或Linux比FreeBSD好,我想程序员普 遍都喜欢追求完美,非要用最好最完美的系统才甘心吧!

[转]选用Linux空间的8大理由      文章属于:设计开发

 
最近一直在忙建站的事,我的blog终于差不多了,呵呵,把选空间的一些经验总结一下。
选用Linux空间的8大理由(反正我不会去用那些win系统来装wordpress,总感觉怪怪的)
1. 稳定
Linux的稳定性是得到普遍认可的。一台Linux主机运行几个月甚至于几年不需要重启并不罕见,与此相对,window的频繁死机让用户头痛不已(Linux系统还是大型构架的王道)。很多著名公司和网站,比如Google,就使用基于Linux的系统。
2. 不易被病毒感染
当然,病毒是无处不在的,但Linux系统的本身特点决定了它不易被病毒攻击。单独的用户可能由于在系统中运行带病毒文件对自身造成伤害,但这种损害难以传播影响其他用户。此外,所有的Linux经营商都提供免费在线安全升级。Linux对病毒的态度是防范于未然,而不是拼死否认自己有漏洞(其实这些都是瞎扯了,偶始终认为是ms树敌太多了-_-)。
3. 对硬件要求低
由于Linux的发展特点而决定了它比其他操作系统更节约硬件资源。即使在比较老的硬件设置上,Linux仍然能跑得起来(这可不是扯的,我的老486还跑着小红帽呢)。
4. 有大量开源程序
举不胜举。想要什么直接下载好了。
Wordpress, Joomla, Shopping cart, phpBB2 Forum, Discuz forum. Mambo…
有这么多开源免费程序、工具可供选用,干嘛非得去背上盗版的恶名呢。
5. 便宜
便宜!至少国外是这样,linux空间便宜,win的贵,不知道为啥国内是反的?反正在个人应用这层面,要比win实惠多了。不过国内现在也有价格实惠、使用中文简体cpanel控制面板的linux空间,比如EBL主机。
6. 兼容性
Linux可以与TCP/IP、LANManager、Windows for Workgroups、Novell Netware或Windows NT网络集成在一起。如果你愿意,可以把Linux程序拿到windwo空间运行。当然,PHP程序还是在 Linux + Apache + PHP + MySQL 这样的空间中发挥出的性能最佳,也最稳定。
7. 使用Linux,等于加入了庞大的Linux社区,而不是成为某个开发商的客户
不同于其他由某个公司开发的操作系统,Linux 是开源的,是由无数开发者共同使用的。使用Linux,就加入了Linux 社区。同时由于庞大的开发者群体,用户的需求很容易得到满足。
8. Cpanel 面板功能强大,用户界面友好。在国际上几乎是Linux空间的标准配备。
Cpanel 面板的图片可以见:http://www.eblhost.cn/shop/article.php?id=20管理子域名、建立邮箱、查看流量、建立ftp账户,在Cpanel面板中都可以轻松实现。(我见过它的后台whm,很好很强大!)
看了看,差不多就这些了,可能因为公司的开发一直在lamp下,所以对win始终不感冒。我现在的空间就是linux的(我反正一测试不是linux的就byebye),小站终于有着落了。

ECshop订单操作权限的开发      文章属于:设计开发

[原创]ECshop订单操作权限的开发
                                                                 作者:xiaodu@softwe
ECshop是当前最流行的电子商城软件,而且由于完全开源,对于我们二次开发出符合我们自身特点的系统,非常有利。下面就以一个简单的实例,描述一次关于订单操作权限的添加过程。
一 基础知识
首先我们需要了解以下一些基本的知识:
1.ECshop的所有可用权限列表存储在数据库’ecs_admin_action’表中
2.权限判断通过admin_priv函数实现
3.管理员的权限设置可以通过后台编辑管理员信息来分配
二 权限详解
 1、商品管理,共有9个权限项目,以下分别是:
goods_manage,商品添加/编辑
remove_back,商品删除/恢复
cat_manage,分类添加/编辑
cat_drop,分类转移/删除
attr_manage,商品属性管理
brand_manage,商品品牌管理
comment_priv,用户评论管理
tag_manage,标签管理
goods_type,商品类型
2、文章管理,共有6个权限项目,以下分别是:
article_cat,文章分类管理
article_manage,文章内容管理
shopinfo_manage,网店信息管理
shophelp_manage,网店帮助管理
vote_priv,在线调查管理
topic_manage,专题管理
3、会员管理,共有8个权限项目,以下分别是:
feedback_priv,会员留言管理
integrate_users,会员数据整合
sync_users,同步会员数据
users_manage,会员管理
users_drop,会员删除
user_rank,会员等级管理
surplus_manage,会员余额管理
account_manage,会员账户管理
4、权限管理,共有7个权限项目,以下分别是:
 template_manage,模板管理
admin_manage,管理员添加/编辑
admin_drop,删除管理员
allot_priv,分派权限
logs_manage,管理日志列表
logs_drop,删除管理日志
agency_manage,办事处管理
5、系统设置,共有9个权限项目,以下分别是:
shop_config,商店设置
ship_manage, 配送方式管理
payment,支付方式管理
shiparea_manage,配送区域管理
area_manage,地区列表管理
friendlink,友情链接管理
db_backup,数据库备份
db_renew,数据库恢复
flash_manage,Flash 播放器管理
6、订单管理,共有10个权限项目,以下分别是:
order_os_edit,编辑订单状态
order_ps_edit,编辑付款状态
order_ss_edit,编辑发货状态
order_edit,添加编辑订单
order_view,查看未完成订单
order_view_finished,查看已完成订单
repay_manage,退款申请管理
booking,缺货登记管理
sale_order_stats,订单销售统计
client_flow_stats,客户流量统计
7、促销管理,共有6个权限项目,以下分别是:
snatch_manage,夺宝奇兵
ad_manage,广告管理
gift_manage,赠品管理
card_manage,祝福贺卡
pack,商品包装
bonus_manage,红包管理
三 订单操作权限的开发
上面提到的权限列表是我们比较常用的一些,我们具体来看下针对订单操作权限,主要是
order_os_edit,编辑订单状态
order_ps_edit,编辑付款状态
order_ss_edit,编辑发货状态
order_edit,添加编辑订单
order_view,查看未完成订单
假如我们某一个管理员需要”PDF打印订单”权限,(假设”PDF打印”功能已经实现),我们来看以下具体的操作步骤
1.首先在数据库ecs_admin_action中插入一行code为”pdf_manage”,parents_id为6(sql语句)
2.在language/admin/priv_action.php中找到”//订单管理部分权限”,在下面新加一行
   $_LANG['pdf_manage'] = ‘PDF打印管理’;
3.在后台编辑某管理员权限页面,我们可以看到这个选项,分配给他。
当然这个时候该管理员还没有真正拥有这个权限。打开admin/order.php 搜索$priv_list(大概在2950行)
修改代码为以下部分:
    /* 取得订单操作权限 */
    $actions = $_SESSION['action_list'];
    if ($actions == ‘all’)
    {
        $priv_list  = array(’os’ => true, ’ss’ => true, ‘ps’ => true, ‘edit’ => true,‘pdf_manage’=>true);
//如果是拥有所有权限(比如admin),分配他PDF打印权限,当然如果你希望是特定的某一个人,这行可以不加
    }
    else
    {
        $actions    = ‘,’ . $actions . ‘,’;
        $priv_list  = array(
            ‘os’    => strpos($actions, ‘,order_os_edit,’) !== false,
            ’ss’    [...]

抓取页面数据的讨论(正则表达式)      文章属于:设计开发

抓取页面数据的讨论
提示:如果这不能成为一项脑力活,那么将成为一项体力活。
如果我们善于去探究数据所在页面的规律和页面组成的规律,事实上我们的工作将变的非常轻松,考虑一下比较平
衡的抓取规则(如果数据量大,而服务器又限制或者被发现,就惨了),然后就进入到了实施阶段。
我们最常见的是
preg_match_all(”|<[^>]+>(.*)</[^>]+>|U”,$b,$a);

取出<></>标签,能够去除大量的HTML标签,却并不是很完全,因为有一些复杂的写,例如有大量的<>嵌套使用,还是无法完全清理的。
除了运用正确的正则表达式和PHP函数外,我们要理解其中的贪婪模式和非贪婪模式,其中贪婪模式顾名思义就是
指尽可能的匹配,而非贪婪模式指的是存在即可。
(d)(\w+)就是一个贪婪模式,如果字符串是“dxxxaaabbb”的话,匹配结果就是“xxxaaabbb”。
(d)(\w+?)是非贪婪模式,匹配的结果是“x”,即存在即可,而不会去匹配更多的相似结果。
其实就是指匹配的次数和匹配的精度。
所以我们在抓取数据的时候,要分析页面和数据的规律,选择适合的模式进行匹配和提取。
以下是一些基本的正则表达式
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空白行的正则表达式:\n\s*\r
匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? />
匹配首尾空白字符的正则表达式:^\s*|\s*$
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
匹配QQ号:[1-9][0-9]{4,}
匹配中国邮政编码:[1-9]\d{5}(?!\d)
匹配身份证(15位或18位):\d{15}|\d{18}
匹配ip地址:\d+\.\d+\.\d+\.\d+
匹配特定数字:
^[1-9]\d*$    //匹配正整数
^-[1-9]\d*$   //匹配负整数
^-?[1-9]\d*$   //匹配整数
^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$   //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮点数(负浮点数 + 0)
匹配特定字符串:
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串
附加一条
//提取img标签的属性串
preg_match_all(”/src=\”(.*)\”[ src| width| height| alt| align| style| border| hspace| vspace|>]?/iU”,$s,$arr);

程序员的基本素质要求      文章属于:设计开发

 程序员7种基本素质:          
  1:团队精神和协作能力    
  2:文档习惯    
  3:规范化,标准化的代码编写习惯    
  4:需求理解能力    
  5:复用性,模块化思维能力    
  6:测试习惯    
  7:学习和总结的能力    
看完这7点要求,想要从中取出最重要的两点,可是仔细看完每一点的要求,才发现每一点都是不可或缺的,对于一个coder来说都是最重要的。首先讲到的就是团队的协作能力,团队的存在是为了提高开发效率,整合各自的优势,如果不能够融入团队中去,后果只有两个,要么拖累这个团队,要么被淘汰。我们在工作中不论大小项目,只要是两个或两个以上人员参与的工作都必须协同工作来提高工作效率和开发速度,因为两个人也是一个团队。众人拾柴火焰高,柴木摆放的位置如果均是理想状态,火焰也将是最旺盛的。
其次是编码的编写习惯。良好的编码习惯有这样几个好处,1、代码外观完美 2、方便检查错误 3、方便别人阅读 4、方便后续开发。其实编码习惯反应了一个人的思维逻辑,思维的清晰程度其实都反映在了代码上。如果今天完成的代码到了明天连自己都读不懂的话,那将是程序员最大的悲哀。
文档习惯和需求理解能力确实是最基本的素质了。1、经常写文档,哪怕项目没有要求,这是对自己负责,对项目负责,一个项目可能需要很长的时间,时间一长,很多东西可能会遗忘,而文档将帮助你迅速了解整个系统和开发过程。2、需求理解能力如果都不能做到的话,如何去进行一个项目?只有充分深入的了解了整个项目和系统的要求,才知道自己在开发中应该做什么,如何做。
复用性、模块化思维能力的要求,不仅仅指代码的重用性和方法的重用性,更重要的是逻辑的重用性,所谓以不变应万变。我们要学会分割,将大块分割成小块,将难题分割成简单的问题,将复杂的逻辑分割成简单的算法,这样就会提高开发的效率和降低开发的难度,如果能够做到模块间的耦合成都最小,整个系统就像是由几个模块组合而成,并且模块之间相互影响的程度最小,我们何乐而不为呢?或许一个系统开发完成后就能够应用于多个方面。
测试能力是一种必备能力,我们要善于发现自己的错误,及时修改和弥补,而不能等错误来找我们。
每一行代码,每一分钟的开发其实都是一种学习和总结,只不过要善于应用自己已有的知识和总结新知识,只有这样不断的学习和总结,才能不断进步。克服一个难题的目的不仅仅是克服它,而是要学习解决它的方法。

我们的技术      文章属于:设计开发

Softwe追求品质优良的web开发技术。
A- 对于后台,我们着力打造PHP技术团队。相对于JAVA\.NET,PHP更平易近人,首先他是免费的,没有.NET那么高的入门门槛(当然在中国这个门槛暂时不存在),特别是个中小企业应用,可以有效的降低成本;其次他是成熟的,PHP风风雨雨十几年,当时很多一起竞争的技术都退隐舞台了,但PHP依然存在,而且生命力越来越顽强(知道么,现在世界上网站后台采用PHP技术的最多!),也许他没有ROR时髦,也没有JAVA高贵,没有.NET有“钱”途,但他一直稳定的发展着,呵呵,so why not php!;最后,PHP有一大堆优势,在性能、兼容性、稳定性上的良好表现,数以万计的开源代码和技术社区,广泛的Hosting服务支持 …
B- 我们支持FLASH技术,因为我们支持RIA(富客户端)。在互联网越来越媒体化的基础上,RIA不可避免的提到开发者的议事日程上,FLASH的长期优越表现和后台强大的推动力,让人无法抗拒。Flex的出现也从根本上解决了FLASH无根的问题(成体系了,也可以叫平台了:-P)。互联网就是个媒体,媒体需要更好的界面。
C- DIV+CSS,如果你不懂,那就赶快补补课吧~~~
D- Linux,不排斥windows,但我们力挺linux!

  • 文章分类

    • 公司发展 (24)
    • 杂谈妄想 (2)
    • 设计开发 (6)
  • 文章存档

    • 2009年12月
    • 2009年11月
    • 2009年10月
    • 2009年09月
    • 2009年07月
    • 2009年06月
    • 2009年05月
    • 2009年04月
    • 2009年03月
    • 2009年02月
    • 2009年01月
    • 2008年12月
    • 2008年11月
    • 2008年10月
    • 2008年09月
    • 2008年07月
  • 友情链接

    • EBL团队日志
      HostingInChina
      MelonKing Seo
      WordPress Planet
      嘟嘟网开发日志

网站首页  联系我们  网站地图  EBLHOST  HostingInChina
Copyright: 2008 © 郑州炜一软件开发有限公司