服务器的ACPI错误修正

记录一下.

前一阵发现服务器开始隔几天就重启一次.

查看/var/log/messages 发现:

[    1.548882] ACPI Error: Field [CPB3] at 96 exceeds Buffer [NULL] size 64 (bits)        (20090903/dsopcode-596) 383 Dec  4 16:12:49 pangu kernel: [    1.548889] ACPI Error (psparse-0537): Method parse/execution failed [\_SB_._OSC]      (Node ffff88045e4468c0), AE_AML_BUFFER_LIMIT               irbr0: starting userspace STP failed, starting kernel STP

最终的解决办法是:在启动参数中加上:acpi=ht,这个选项是设置为禁止acpi的其他功能,只保留多核功能.有的教程是让加上acpi=off,那个禁用了之后,在很多机器上会导致,多核的机器只认一个.

1.修改启动时的acpi参数要慎重,有时会导致电源管理失效….做好去机房的准备.

2.现在grub把配置文件从/boot/menu.lst改到了/boot/grub/grub.cfg中.

发表在 未分类 | 7 条评论

postfix+courier-authlib+sasl实现虚拟用户/虚拟域的种种陷阱

[具体的安装过程,请参考这篇文章:http://man.chinaunix.net/tech/Postfix_I.html#a.6 ]

这几天研究了一下EDM,装上postfix玩了玩虚拟用户,发现安装过程中好多陷阱,网上的教程文章误人子弟的太多,所以忍不住吐槽一下,一般过程就不写了,就写常见的几个陷阱:

1.网上都说sasl的配置文件在/usr/lib/sasl2/smtpd.conf ,个别文档说在/etc/sasl2/smtpd.conf.我浏览/usr/lib/sasl2/目录的时候就疯了,这下面全是so文件,怎么能把etc配置文件和一堆so文件搁一块?也没任何地方可以明确指明这个文件放哪儿,最后翻postfix的文档,人家说了,一般是放这两个地方,不过有个别linux发行版把它指定在/etc/postfix/sasl/下面…好吧,我中标了  我用的这个版本的ubuntu就是这么放在/etc/postfix/sasl/下的

2.在/etc/postfix/main.cf里:

#smtpd_sasl_application_name = smtpd 语法已经废弃,改为:

smtpd_sasl_path = smtpd 了

3.很多兄弟估计也是smtp连接的时候授权都没成功呢,就在那儿刷postfix的日志呢….记住调试的时候,一定要把/etc/courier/authdaemonrc里的DEBUG_LOGIN=0 改为DEBUG_LOGIN=1 .不过调试完成记得改回去, 不然泄露用户smtp密码.

4.类似错误:SASL authentication failure: cannot connect to Courier authdaemond: No such file or directory SASL LOGIN authentication failed: generic failure这种错误,碰到的兄弟有很多吧.这是说,postfix无法通过sasl连接到认证服务器,这里就是无法连接到courier-authdaemon.出这个错误的原因是,postfix的进程默认是在chroot环境里运行的,相信在你的操作系统里,courier-authdaemon进程产生的socket文件/var/run/courier/authdaemon/socket 一定是存在的.网上有些伪专家就指导你说,这个文件的授权不对,你要chmod 755啥的.扯蛋,能用chmod 755解决的问题,绝对是超低级的问题了.postfix在chroot环境,根本读不到chroot环境以外的文件.于是又有一堆伪专家出谋划策,说,我们做个符号链接一下就行了.我最开始在google上搜到这个答案的时候高兴坏了,以为真的一下子就解决了呢.ln -s /var/run/courier/authdaemon/socket /var/spool/postfix/var/run/courier/authdaemon/socket 这样,可以了吧.抱歉,也不行的,我特地重复了一下这个过程,就为了看postfix是怎么提示的:

SASL authentication failure: cannot connect to Courier authdaemond: Too many levels of symbolic links

不好意思,又掉陷阱了.而且,在有的兄弟那里,courier-authdaemon的socket文件和postfix的spool不在一个卷上,linux根本就没法跨卷创建符号链接的.

我的解决办法:

#试着在/etc/postfix/master.cf 中smtp inet n – - – - smtpd

改为

smtp inet n – n – - smtpd(这里修改掉的n,这一列表示是否在chroot中运行)后面还会遇到类似的问题;

5.说一下这个错误:

日志类似:

类似postfix/trivial-rewrite[23299]: warning: connect to mysql server localhost: Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2) postfix/trivial-rewrite[23299]: fatal: mysql:/etc/postfix/mysql_virtual_domains_maps.cf(0,lock|fold_fix): table lookup problempostfix/master[13544]: warning: process /usr/lib/postfix/trivial-rewrite pid 23299 exit status 1

我的解决办法很简单,在postfix的相关写Mysql用户名密码的配置文件里,将localhost改成127.0.0.1,同时保证mysql server对127.0.0.1这个IP做了授权就Ok了. 这个原因是,postfix使用了一种多进程的架构,不同的进程可以各自配置是否以chroot方式运行.(以chroot方式运行为postfix提升了安全性,但是为配置的兄弟们带来了不少麻烦).postfix在chroot环境里,所以,它是读不到/var/run/mysqld/mysqld.sock文件的.当然也可以关掉chroot.

6 出现authentication error: Input/output error错误的时候估计是查询mysql时,authdaemond出错了。具体要打开authdaemonrc里的:
DEBUG_LOGIN=2    原来默认是0
然后看看/var/log/message或/var/log/mail.log 在认证失败时有什么提示。根据提示去检查问题到底出在哪儿

 

7.类似错误:Feb 14 18:21:06 hostname postfix/smtpd[15254]: warning: SASL authentication failure: cannot connect to Courier authdaemond: Permission deniedFeb 14 18:21:06 hostname postfix/smtpd[15254]: warning: localhost[127.0.0.1]: SASL LOGIN authentication failed: generic failure这种一般是因为权限的问题,假设你的authdaemond的socket路径是/var/run/courier/authdaemon/socket  像下面这样一级级目录地修复权限就没问题:

sudo chmod a+x /var/
sudo chmod a+x /var/run/
sudo chmod a+x /var/run/courier/
sudo chmod a+x /var/run/courier/authdaemon/
这也是一个容易让人困惑的地方.sasl不仅需要能读那个socket文件,还要能读它的各级父目录;

发表在 未分类 | 2 条评论

淘宝搜索优化课程:淘宝宝贝搜索优化的几个要素

对于大多数淘宝卖家来说,流量来源主要是两个:一个是淘宝搜索,一个是直通车.对于有的卖家来说,他们的主要来源是各式广告或活动,包括聚划算,钻展,有的卖家还不定期地上淘宝首页,有的做大促甚至自己去包新浪的硬广,这种卖家数量少,在此不做讨论.

整体来说,对于所有宝贝来说,相对淘宝搜索的流量,直通车的流量要小一些,这个不用置疑,因为搜索结果和直通车占的展示区域大小都不一样嘛.我们对使用小钱包统计的用户的流量来源做了一个统计,大约来自搜索结果和直通车的页面流量占比约为6:4.直通车的优化我们另讲,这里,主讲搜索.

搜索这一块,淘宝现在是自然排序和人气排序和7:3的机率对比.自然排序,是我们主要讨论的优化重点.为什么是这个比率呢,一方面,要给人气商品以更多的机会,另一方面,也要扶持中小卖家.

自然排序的影响因素,一共有6个:相关性、作弊降权、橱窗推荐、下架时间、消保,还有最近宣布的宝贝主图质量.用一段描述来说就是:如果你的宝贝没有作弊,相关性好,是在橱窗推荐里的,参加过消保,那么就会按照下架时间来排序(这个说法没有将主图质量考虑进去)。大家可能都知道淘宝的商品有个上下架时间,淘宝的商品定价有两种,一种是拍卖,我设个起始价,比如10块,然后定个下架时间,比如7天.这7天里,谁都可以加价,7天一到,谁出的价高,谁就拍到了,我就卖给谁.但是一口架的商品呢,这个其实是不需要下架时间的,尤其是最近淘宝商品已经是自动重新上架了,为什么要保留这个属性呢,这个事实上就给了大家一个轮流的机会.每个卖家的货在下架时间前的几个小时,都有挺多机会被买家搜到的.

下架时间之外的其他因素,除开”相关性”,”主图质量”这两个以外,其他的基本都是”是”或”否”的关系.比如作弊降权,你有就是有,没有就是没有,消保也是,你加入了就是加入了,没加入就是没加入.这几个因素,怎么操作,就很简单:不要作弊被降权,一定要加入消保,一定要利用好橱窗推荐.

关于作弊降权,这个大家要注意的,不要存在从众心理,有人会想,唉呀你看那谁谁家的也这样作弊了,淘宝也没把它怎么的呀,我为什么不可以这样作弊的?对于大多数人来说,你的作弊手段不是那么的高明,淘宝搜索有一帮专门研究反作弊的小二,你那点小伎俩,人家早就知道了.到于有些作弊为什么没有被处理?原因太多了:可能是因为这种作弊手段不太好通过程序自动明确地判断,所以需要人工一个个地审,漏掉了,也可能是因为发现了情节不太严重,或是淘宝还没有明相关条文明确认定这是作弊行为,还可能就是你级别太低懒得打击你开店的积极性了 :lol: .但是一次没发现或是没处理,不代表总是不会被发现总是不会被处理.我就知道有好几个店,三四皇冠了,一日事发,全部白干,全店降权,不能报名任何营销活动,只好新开一家店全部从头再来.

消保和橱窗我略微讲一下吧.现在淘宝大部分类目要求必须先加入消保了,基本上,这个是大势,如果确定做淘宝,这1000把块钱,还是得先准备了.上淘宝搜任何主流常见的商品,你看第一页,有几个是没有加入消保的?橱窗么,这个,小卖家来说,也要尽量挣取更多橱窗位,不就是买旺铺么,不就是加消保么,都搞上吧.没几十个橱窗,你别说你做淘宝已经用心了.搞完橱窗位,还要努力用好,用对.第一个原则是,绝对不要让橱窗空着,第二个原则是,尽量将快下架的商品优先放入橱窗中.

主图质量这个因素其实刚刚加进来,还不是特别地普及.原则就是,尽量地保持图片大于800×800像素,尽量使图片尺寸小(这样加载快),尽量让图片美观,少加牛皮癣广告,尤其是有的类目.大家都知道卖数码的,一般不重视店铺装修啊宝贝图片什么的,但是如果你是卖服装的,一定一定要注意这个图片质量.第一个原因是,主图质量不行的搜索排序不占优势,第二个原因是,即便是你排第一了,如果用户瞅一眼就不想看第二眼,我觉得他也不会点开.做搜索优化,不仅要让自己的宝贝排到前面,也要让买家更愿意打开自己的宝贝.

最后一个因素,就是相关性了.这个相关性,指的就是你的标题和买家搜索的词的相关性.注意,只有标题,淘宝不考虑商品的内容的!所以,你的商品的标题一定要起好,要最大程度地涵盖要点内容.在这个基础之上,再考虑怎么根据用户的搜索带流量.

下面举几个实例:第一个宝贝,叫”天吉重庆怪味胡豆”,用”搜索优化”测了一下,发现….竟然没有用户热搜词,一个也没有.还好,找到一个”怪味豆”的,有100多次搜索,那标题就优化成”天吉重庆怪味胡豆(怪味豆)”.另一个宝贝,名字叫”秋季睡衣新品长袖圆点印花圆领公仔卡通可爱少女纯棉睡衣休闲套装”,这个是一个分销商品,厂家在制作宝贝说明的时候就起了这样一个名字,这个名字就是经过优化过的,因为,第一他注意到了要充分利用淘宝的宝贝标题所允许的最多30个汉字,第二个,还故意强化了睡衣,睡衣这个词出现了2次,这个标题一共包含了”休闲套装 ,纯棉睡衣 ,秋季睡衣 ,少女 ,可爱, 卡通 ,长袖 ,新品 ,圆点 ,印花 ,公仔 ,圆领”这高频搜索词.那么这个标题是个好标题吗?不是.为什么?因为这个标题有点儿优化的过了头了.有大量的人搜索纯棉睡衣,也有大量的人搜索秋季睡衣,可能也有大量的人搜索长袖睡衣什么的,但是,不管这些人搜索什么,这个标题跟这所有的搜索词,相关性都不够大.你想想看,当你搜”纯棉睡衣”的时候,这个30个字的标题,跟”纯棉睡衣”只有12%的相似度,凭什么这个标题能排到前面?所以这个宝贝尽管堆砌了一大堆的关键词,但是,没有得到相要的好处.

再看另外一个宝贝,”吾尚经典原味龟苓膏155克”,这个,我们从另一个角度分析.搜索”龟苓膏”,共有4000条结果,按人气排序时,近一个月销量比较大的卖家卖出的有300多件的,有100多件的.再 搜”原味龟苓膏”,有300条结果,按人气排序,近一个月销量最大的卖家也有10,20多的销量.这个说明,这个”原味龟苓膏”本身的市场规模也就这样了,你光优化”原味龟苓膏”这个,已经用处不大了,所以这时标题优化就不是重点了.不如看看同类中销量大的宝贝怎么取的名:

包邮 广西特产梧州正宗双钱牌龟苓膏粉300g*3包 美容去痘养颜排毒

广西特产梧州正宗双钱牌龟苓膏粉300g*3包34元包邮 美容去痘养颜

特价 6袋包邮 100%梧州正宗老牌寿仙宝龟苓膏粉250g

发现什么了?这时人家的标题不是在堆词,是在打促销[包邮,特价],在打功能[美容去痘养颜排毒],在打品牌和品牌[广西梧州特产正宗老牌].

 

 

发表在 未分类 | 3 条评论

用syslog-ng实时收集每一行php报错

很久没写日志了.今天来点儿技术的.

因为目前的创业项目是电商服务,为了将服务可用率不断地提高,以保证我们的客户不管何时总是能正常使用我们的服务,我们决定收集PHP的每一个报错信息.最终的方案如下:

1.安装syslog-ng,修改配置文件vim /etc/syslog-ng/syslog-ng.conf ,加上这几行:

source s_phplog { file(“/home/x/logs/php/php.www.log”);};
destination d_php_tomail { program(“/home/x/bin/send_my_mail.py”);};
log { source(s_phplog);destination(d_php_tomail);};

这几行配置就是让syslog-ng来监控php日志输出,然后每当有日志输出,就启动我写好的一个脚本文件,让它来发送到我的邮箱.send_my_mail.py内容很简单:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#导入smtplib和MIMEText
import smtplib
from email.mime.text import MIMEText
#############
#要发给谁,这里发给2个人
#####################
#设置服务器,用户名、口令以及邮箱的后缀
mail_host="smtp.****.com"
mail_user="noreply@example.com"
mail_pass="****"
######################
def send_mail(to_list,sub,content):
    '''
    to_list:发给谁
    sub:主题
    content:内容
    send_mail("aaa@126.com","sub","content")
    '''
    msg = MIMEText(content)
    msg['Subject'] = sub
    msg['From'] = mail_user
    msg['To'] = ";".join(to_list)
    try:
        s = smtplib.SMTP()
        s.connect(mail_host)
        s.login(mail_user,mail_pass)
        s.sendmail(mail_user, to_list, msg.as_string())
        s.close()
        return True
    except Exception, e:
        print str(e)
        return False
if __name__ == '__main__':
    mailto_list=["renlu.xu@xiaoqianbao.com"]
    lines = raw_input()
    if send_mail(mailto_list,"发生了错误",lines):
        print "发送成功"
    else:
        print "发送失败"

就是从标准输入中读到内容,然后发送到邮箱.我就是从网上扒了段代码,都没细读.

然后重启syslog-ng:

sudo /etc/init.d/syslog-ng

就可以了.我把这个日志设置为发送到了qq邮箱,然后用微信接收,就实现了服务器的实时报警.

但是后来发现,一些日志,发过来的,完全没法查是怎么出问题了,比如如报警是undefined function init_framework() called这种,连我初始化函数都没有加载,我都不知道这程序从哪儿开始执行的了….于是决定小改造一下,在有严重的出错信息时,将当前的URI信息记录到errorlog中.就有了这么一段代码,插入到php文件的开头了:

<?php
register_shutdown_function('handleShutdown');
function handleShutdown() {
        $error = error_get_last();
        if($error !== NULL){
            $info = "[SHUTDOWN] file:".$error['file']." | ln:".$error['line']." | msg:".$error['message'] .PHP_EOL;
            $sapi_type = php_sapi_name();
            $sapi = substr($sapi_type, 0, 3);
            if($sapi=="cli"){
                $info .= join(" ",$_SERVER["argv"]);
            }else{
                $info .= $_SERVER["HTTP_HOST"]."".$_SERVER["REQUEST_URI"];
            }
            error_log($info.PHP_EOL,3,ini_get("error_log"));
        }
}
?>

提示一下本人搞东西极期不认真,所有代码均非原创,请勿直接使用于生产环境.

发表在 未分类 | 2 条评论

关于”为什么京东今天还在用.net架构?”的乱想

知乎上有个问题,”为什么京东今天还在用.net架构?阻力在哪里?”

回答中有以下几种意见:

我想问的是 .net 与java 与php比较性能方面有劣势吗?

这问题问的,真是无语,记住了,技术永远是实现业务工具,对于一个企业,一个网站,一个应用的后端,语言根本不是问题,问题是在用这个工具的人!就像打羽毛球,同样都用顶级的球拍,一个普通人和国家队的能比么?

我把我的意见贴在这里:

1.
关于性能.
我诧异,还有人一谈到这个问题是首先想到性能啊?????
人多了,就有人的招聘,和管理,协调问题.你可以用什么lisp的人搞,但你需要扩大规模的时候,比如,你需要1000人搞lisp,你上哪儿给我招去?有人开玩笑说,用delphi是快速实现,用c是快速运行,用java是快速招人.有些公司要招java,没什么别的原因,就因为他发现他到学校去问的时候,人家学生都是学的java.为什么他要到学校去问去招人?因为老板们不混技术圈,不是每个老板都在iteye csdn上一堆粉丝.
机器多了,有机器的安装和管理问题.现在,假设你有10000台windows服务器,又有10000台是debian,还有10000台是比如sun的系统.你现在需要整个监控系统,你发现,操,snmp协议,windows支持的版本只能到2c,不能支持版本3!好多东西这个版本搞不定!
凡此种种,不再列举.
这跟性能没一毛钱关系.

2.关于工具.
是的,技术只是实现业务的工具.没错.语言不是问题,问题在于使用工具的人.都没错.但是,到了一定规模,你会发现,真的,就算微软的人天天蹲你这,也解决不了问题.请询问相关公司的运维团队,架构团队.尤其那些从.net换到java平台,或是从php平台换到java平台的.
工具不重要么?工具很重要.小李飞刀为毛要用飞刀啊,用菜刀不也一样杀人么?
.Net也不见得什么场合都不能满足需求,淘宝用Java好,不见得你用Java也好.淘宝用上万台机器,用Hadoop来分析日志,想上hadoop集群玩还得排队,你就不到10台机器内存加起来还不够人一台机器,你就不能用hadoop,你自己装个awstats玩玩就可以了.

当你是CTO时,你不可以说工具不重要技术平台不重要.每一个决定都得慎之又慎.刘强东可以选错平台,因为对他来说选技术不是他的主要任务.至于京东内部,也许很多部分也已经在进行调整了,如果.net不能满足需求,不用几年京东会全面更换,肯定不会因为这个死掉.发现问题,他们会解决问题.

3 关于选择
每个决策的背后总有各种各样的原因;你可能永远无法知道,也许某个公司制定上下班时间不是朝九晚五而是朝十晚六的原因是某个VP想接送孩子,也许某个公司选某个方案不选另一个只是因为某公司业务员说错了一句话让某个头儿觉得没面子,当然也许某个方案被选中是因为某人觉得便宜的那个似乎太便宜了,很多时候可能真不关乎利益,就这么就定下来了.
为什么京东选择.Net?不是当事人,谁也说不清楚.

4.其他关于windows和linux的零零碎碎
在省钱方面:首先,大部分观点认为windows和linux省钱.这个其实也不是特别绝对吧,像我在雅虎的时候,用的redhat,当然雅虎也自己定制了一部分,不过很多服务器上的包都是没有更新的,要用的话也得从redhat搞,redhat的收费其实也不低.像那些unix系统,收起银子来大把大把地收费.
而且使用windows有好处就是,人员招聘快,人力的成本也低.02,03年,好多人不就是从动网论坛走了了网站开发的路啊,我认识一些部队复员或是在打字店出来搞开发的朋友,都是windows平台.让他们一开始就搞unix,没法入手的.那会学点asp就出来找工作,工资要求也都很低.几百块钱几千块钱就可以找人弄个网站….
安全性啊性能什么的:我不太懂,不乱说了.反正很多人喷说windows不够安全,我不太懂,不过我觉得也不至于说那么夸张吧,你用什么家庭版装个东西啥也没配,当然不够安全了.服务器版应该好多了吧,,服务器什么的老被破的话.京东还用挣钱么.性能方面,第一是没那么重要,第二是没你想的那么差.好多人就是人云亦云的,跟着起哄而已,人家说windows安全性差,你也说,人家说windows性能差,你也说.你自己攻破过京东的凡客的windows服务器?你自己做过性能测试?

5 结语:
一步步来吧,有的人自己就是高手,或是有技术圈子认识的人,那么可以容易招到人,技术上可能一开始就好一点,有的人可能就是光着膀子扛电脑起家,一买一卖挣点小钱,进淘宝学用支付宝用了好几个星期,认识的人最懂的也就是会ghost装xp的,那就将就着呗,有什么用什么吧.
京东有一天说,我这个系统,跟不上我的发货能力了,我要换,他们自己会考虑.跟我们这帮外人没啥太大关系,放心吧,老刘发现淘宝一天轻轻处理数十亿交易而已自己一亿交易额处理也费劲的解放后我,他会过问会想法处理的.京东能发展到现在,还有什么槛过不去呢,要我们这帮房子都买不起的人指责人家为什么还要用.net?

发表在 未分类 | 14 条评论

支付宝帐号被盗用

觉得还是不想说太多.简言之,我的支付宝被盗用,被偷了一点点小钱.客服告诉我钱肯定已经被转走了.这我也理解.稍想了一下最近我的支付宝活动,就明白了怎么回事.

我做过支付宝即时收款,当时我也曾意识到如果有个管后台的技术牛人打算要利用起来大家犯的各种错误,可能是可以偷钱的.所以这次我稍微一想,就知道大概的这个盗用是怎么回事了.本来想提醒各位读者的,但是觉得这事还不能提醒.为什么呢,因为我刚刚得到教训了.我以前也是觉得技术高的人,人品一般不会差.但是没想到人其实这么容易受诱惑.大家都是写代码的人,一点即通,看会都保不齐有些人就会去盗支付宝,怎么办?

我就是难过,有的人虽然技术不错脑瓜子也活跃,但是就会走错路.人之间的脑袋瓜子教育水平其实不会差别太多,你聪明能干也不会聪明到哪儿去.差别在于选择.我选择了一步一步踏踏实实地走,而有的人选择了抄近路.你要做郭靖还是要做杨康?

不要问我安全上的技术问题.支付宝上的即时支付在技术上仍然无懈可击.行骗的人总是利用社会学来骗人的.换句话说,技术上再升级也不能弥补你错误的信任这个大漏洞.

其实朋友和亲人的信任真的是笔大资产,我觉得我这二十多年没房没车,但是活得一点儿也不失败,一个月前我做了个重大决定,放弃了很多东西,决定出来做点东西.这个决定得到了家人的一致支持和朋友的鼓励.到目前为止,表示愿意现金入股一起做的朋友已经好几个了,虽然大部分可能最终落实不了,最后多半可能还是就目前这几条枪,但我觉得这个起步是相当有成效的,因为我得到了大家的一致的信任.但是我震惊的是,没想到有的精英人士竟然是用这样一种方式将大家给他的信任这一笔资产变现的.

前一阵老庄给我灌输他的生意经,就讲到,做生意,最主要的事情其实是在努力获取客户的信任.其实,做人,也差不多类似.要想有成就,一定要珍惜大家对你的信任.

年少轻狂,愤青,偶尔懒惰,趣味低级点,这些都不算啥大毛病.但是心术不正,即便你技术不错地位也高收入不赖,终究会被打回原型的,境界永远就是上不去.

ps,欢迎支付宝安全方面的兄弟跟我闲聊.

发表在 未分类 | 14 条评论

由社区引发的乱想

在微博上发还是不得劲,上博客发吧.

今晚上请老庄和@高春辉 过来吃饭聊天,一个运作过篱笆社区,一个运作过手机之家社区,两大高手在社区的商业化运作等系统问题上讨论的相当激烈呀.很精彩.

今天老庄和@高春辉 在讨论有员工就事论事但是很不给你面子的时候怎么办的个问题时,自己在旁边想,其实在阿里几年,学了很多,什么客户第一拥抱变化啊结果导向啊之类的企业文化感慨良多.只可惜那一条”直言有讳”始终没有理解透彻.

技术水平远不会就是开发效率和运行效率这么简单的事.以前年少无知,也研究执行效率啊开发效率啊什么的,也参与各种语言框架的讨论.后来真得好像如愿以偿了,面对一大堆屁股要擦,才发现,有些时候,可以给你大把的服务器啊带宽啊啥的,也也可以给你其他资源支持,但是就是一时半会解决不了,束手无策.

晚上听老庄和老高两人讲社区的时候,突然想起自己也是拿动网程序搭过论坛的人啊.后来会了asp,还会写asp组件了,很狂妄,自以为是asp专家.发布过开源的组件,处理上传和图片缩略图问题.没发展到用户,但是收获了几个人的口头表扬:开源精神可嘉.这会儿回想起来,又学不少:要学会看人长处,要不吝赞美.最近几年像这样帮人的太少.虽然前一阵研究管理,也只是照书背的,只有对自己的同事才会总是提醒自己要多看长处多赞美.其实,这不是管理之道,而是为人处世之道.也许别人做的东西现在看起来太可笑,但是也不要口无遮拦地说,熟悉了,找合适的机会提醒.常常反醒自己,总是个好东西.

人们做某个东西久了,思维总是很固化.就像有句话说的,你要是有把锤子,看什么都像钉子.做社区久了,就会觉商务一定要从社区开始,做生意需要打广告,太不能理解了,那广告不都浪费了么.大家社区分享一下,口口相传,多好,这用户获取成本多低.而另一方面做商家久了,就会觉得互动太麻烦了,妈的我商品页下面留个评论,是让你说好话的,不是让你投诉的.结果产品好用没人来留言,一有小问题大家就上这投诉来了.本来卖1w件才20个有问题的,这留言页却显得30个留言中20个是投诉的还有10个是做广告的.而互相说服太难了.所以,求同存异是个很牛B的能力.我第一次看见这个词,是用在周恩来身上.现在才现这个词确实太难实现了.与之相关,空杯心态也太难得了.

纯属乱想.

发表在 未分类 | 一条评论

谈谈阿里巴巴的企业文化

1.拥抱变化

阿里巴巴企业文化之拥抱变化:拥抱变化被很多理解成”接受变化”.其实不是.拥抱变化的第一阶段是承认变化.变化无所不在,无时不刻不在发生着.有的人经常拿资历压人:我是几几年就在这个圈混了,我有在**的经验,这就是典型的刻舟求剑.另外一句”今天的最好表现是明天的最低要求”.就是注解.

阿里巴巴企业文化之拥抱变化:拥抱变化的第二个要求是认识变化.这个要求对业务,对管理人员都很重要.比如,做为技术人员,你有没有关注到某个业务的用户量不断地成长了,你该扩容了?做为主管,你没有观察到你的主程最近心生不满,想离职了?

阿里巴巴企业文化之拥抱变化:拥抱变化的第三个要求就是大家通常理解的接受变化.阿里巴巴还有另外一句话,叫做”停止抱怨”.变化是无法阻挡的.那么,接受它吧.

阿里巴巴企业文化之拥抱变化:拥抱变化的第四个要求是….创造变化.要求太高了,哈哈.慢慢练吧.这玩意学得会,却没有可以教.人无我有,人有我新.创新是应对竟争的唯一法宝.指望找一片蓝海,没有人跟你竟争是不可能的.只要你一干好,哪怕你是在石头上钻井打石油,别人也会模仿会竟争.只有不断地创新才能立于不败之地.

2.客户第一

有些人的困惑是,谁是我们的客户.阿里巴巴的企业文化有这一条,有两层意思:1是阿里的文化,是销售的文化,阿里的业绩是销售们东跑西跑拉客户挣来的.销售占了主导,销售人员的企业文化也就占了主导.所以,才有淘宝的人入职新人自我介绍时会被问到你第一次是啥时候啊,跟谁啊,什么姿势啊,感觉如何啊,咋的.这是典型的销售文化,在各个子公司里都能看到明显的销售文化.2是,其实每个人都应该有客户意识和服务意识.是不是编码的工程师,尤其是机房里的系统工程师,他可能整个职业生涯中都见不到客户,他是不是没有客户了呢???他服务于谁,谁就是他的客户.所以,KPI考评中,其实是应当有合作部门的评价这一项的.

客户第一,深深地印在你的脑子里后,是会改变你很多想法的.从阿里出来创业的人特别多,因为他们知道,既然自己有了客户,呵呵,干什么不可以.有客户的支持,就无所畏惧.能够为自己的客户创造最大的价值, 是很爽的一件事.反过来思考,如果连自己的客户是谁都找不到,那还是老老实实地呆着吧,别幻想当老板了.

3.诚信

诚信,其实是一条普世价值.跟前面两条都不一样.拥抱变化,客户第一,其实在执行的时候是经常会出问题的,经常会被别的借口干掉,当然通常也容易被拿来为某些事情做借口.在实际执行中,有些时候,人们可能不太能接受:啊,又要换部门啊,我有****什么什么理由不能换啊.而老大就说:拥抱变化吧!

由此可见,这两条,其实有时不容易被执行.而诚信不然,从来没有谁宣传跟诚信相背的东西.几乎绝大多数企业都把诚信或类似的理念写入自己的企业文化要求中.但是普世价值有很多啊,孝顺啊,忠诚啊,宽容啊都是啊,为什么诚信被列入了企业文化中呢?

因为如果不诚信,企业既无法获得客户,也无从管理自己的雇员.甚至…股东都得不到自己的利益.而企业文化这玩意儿,谁炮制出来的?看起来是某些部门的比如Hr们弄出来的,其实是股东弄出来的.所以诚信比别的普世价值观更重要.

发表在 未分类 | 一条评论

电商乱谈「微博汇总]

优惠券类产品,应当关注两个点,一是对商家的价值,一是对用户的价值。帮商家做成更多的生意,帮用户省钱。你对哪面的价值更大,就向哪一面收钱。没价值还收钱,那就是骗钱。

刚才花了一点时间把那个微博优惠券的应用研究了一下。感觉营销上算是有一点新意,但是至少有两个硬伤,一个是商业价值上不够透。商业上,应该安排BD去谈,去把折扣拿到最底。如果页面上充斥折扣力度不大的优惠券,会失去用户的关注。而技术上,最简单的表现就是页面慢,常打不开,设计也欠精细。

电商类网站核心点:1.用户都有从众心理。如果过来看这网站没人,他也不会动作。所以,淘宝用户自己刷成交量,小站长在论坛里自己用马甲发贴。 2.用户对你的信任很重要。所以实体门店要精装修,你的网站也要精装修,要做的美观大方,并且快速稳定。不要让人觉得你美工都请不起,那样谁信任你啊。

电商类网站核心点:3.用户因事而聚。你说团购网站他怎么能有流量?其实你不用担心,你在大街上有家私宅,会有闯入你家么?不会。但是你开个饭馆什么的,就总会有人进来。如果太偏,你可以安排个人站大街上吆喝嘛。这就是网络推广。要通过持续不断的购买拉动用户。用户看毛片是刚需,买东西也是刚需。

发表在 杂谈 | 标签为 , | 3 条评论

rails每周乱弹:mysql的安装

环境:MBP,Mac OS X 10.6.7
标准安装方法是:
1.安装homebrew;在github上搜索;
2.安装mysql;
brew install mysql;
cd /usr/local/Cellar/mysql/{version}/
./bin/mysql_install_db;
./bin/mysqld_safe&
3.安装gem包
sudo env ARCHFLAGS=”-arch x86_64″ gem install mysql2 — –with-mysql-config=/usr/local/Cellar/mysql/5.5.10/bin/mysql_config
如果不需要使用rails,一般用xampp就好,很省事。如果要使用rails,则需要通过homebrew手动安装;

发表在 linux/unix, mysql | 标签为 | 一条评论