标签归档:原创

自由与拘束

自由永远都需要代价,或多或少。

为什么会有这么的感想呢,其实源自一个骚念头,为什么iOS能在系统层面做得比安卓要更加流畅

归根结底就是iOS一点也不自由。

iOS在应用审核和应用权限这一方面的限制非常之大,不经由苹果审核的应用将不得以正常的途径安装到手机当中,这样子极大的提高了应用的质量与应用出现问题的可能。

而安卓则是仅仅以可取消的警告来阻止未审核的应用安装(可以继续安装)。

这样对比就能发现,安卓的自由是极大的,而苹果则相反。

然而就是自由的代价就是,应用质量参差不齐,权限控制十分松散,而导致硬件利用率变低。

 

最近,在US发生了一个极大恐怖事件,歹徒使用撞火枪托进行扫射,造成大量人员伤亡。这类事件在我们可以说是不可能发生的。如果说,枪械的自由能给你提供自己可以保持的安全的话,那么给人们带来的大概就是这样被枪击的可能性。

大数据集群自启动脚本

由于集群需要在启动的时候启动各种服务,而服务如果由master启动的话,则比较不好控制,所以由每个节点独立启动,好处如下:

  1. 可以单独重启一个节点,不需要操作master上的启动脚本
  2. 新加的节点可以使用同样的流程进行操作
  3. 该方案不依赖master中的slavers列表

master启动序列

  1. 启动zk
    ${ZOOKEEPER_HOME}/bin/zkServer.sh start ${ZOOKEEPER_HOME}/conf/zoo.cfg;
  2. 启动namenode
    ${HADOOP_HOME}/sbin/hadoop-daemon.sh –config $HADOOP_CONF_DIR start namenode;
  3. 启动resourcemanager
    ${HADOOP_HOME}/sbin/yarn-daemon.sh –config $YARN_CONF_DIR start resourcemanager
  4. 启动hbase-master
    ${HBASE_HOME}/sbin/hbase-daemon.sh start master
  5. 启动spark-master
    ${SPARK_HOME}/sbin/start-master.sh

slaver启动序列

  1. 启动zk
    ${ZOOKEEPER_HOME}/bin/zkServer.sh start ${ZOOKEEPER_HOME}/conf/zoo.cfg;
  2. 启动datanode
    ${HADOOP_HOME}/sbin/hadoop-daemon.sh –config $HADOOP_CONF_DIR start datanode;
  3. 启动nodemanager
    ${HADOOP_HOME}/sbin/yarn-daemon.sh –config $YARN_CONF_DIR start nodemanager
  4. 启动hbase-regionserver
    ${HBASE_HOME}/sbin/hbase-daemon.sh start regionserver
  5. 启动spark-worker
    ${SPARK_HOME}/sbin/start-slave.sh spark://${SPARK_MASTER_HOST}:${SPARK_MASTER_PORT} -h `hostname`

另外,有一些服务是常驻进行但没有相应的daemon服务管理,此处使用supervisor进行管理

  1. hiveserver2
    ${HIVE_HOME}/bin/hive –service hiveserver2
  2. hivemetastore

    ${HIVE_HOME}/bin/hive –service hivemetastore

kylin-2.1.0装配

Aapache Kylin-2.1.0 装配

系统环境


  • Apache Hive 2.1.1
  • Apache Hadoop 2.7.2
  • Apache HBase 1.2.4
  • Apache Spark 2.0.1
  • Oracle JDK 1.8.0
  • Scala 2.11.8

安装操作


  1. 下载解压 apache-kylin-2.1.0-bin-hbase1x.tar.gz
  2. 创建hadoop_conf_dir,包含文件
    • core-site.xml
    • hdfs-site.xml
    • mapred-site.xml
    • yarn-site.xml
    • hbase-site.xml
    • hive-site.xml
  3. 分发该配置目录到所有节点
  4. 按需修改配置文件
  5. 修改conf/setenv.sh
    增加 export HIVE_LIB=${HIVE_HOME}/lib
  6. 复制hive-beeline依赖到ext/目录下(可以直接复制整个${HIVE_HOME}/lib/*)

所感20170217

不得不得承认,日本动画跟中国动画有着很多本质上面的差别。

中国动画更加的认为是属于幼儿的,对于老中青三代来说,更多的是一种剧情的体验以及画面的感官。
并没有说因此而延伸开来的思想的传播,更加像一部没有特别出彩剧情的动作片,很精彩,仅此而已。

最近在看的一部番《三月的狮子》,真的很棒。
今天看的一集,足以让我记下来写自己的一些感受,因为感觉是如此的有触感。

为什么说让自己没有遗憾,大概就是自己做了让自己遗憾的事情吧。
为什么不能相信自己做的事情,大概就是自己曾经做了偷懒的事情,以至于不能相信自己吧。

致诸君
不要停下。

一次关于腾讯的思考

相信大家都知道,腾讯有个很有意思的名字,叫抄袭王。

无他,当年互联网刚刚开始进入如火如荼的时候,别人出一个游戏,他抄袭一个,别人出一个产品,他抄袭一个。

QQ飞车,QQ炫舞,CF,腾讯微博…

那么问题来了,为什么大部分抄袭的产品都活下来了,而原来的产品却衰落甚至凋亡。

值得深思。

下面为从三个方面去分析腾讯抄袭这个问题,你就会发现,腾讯真的不是为了抄袭而抄袭。

1.技术积累是计算机公司的基石

现在腾讯的计算机技术已经到达了一个国内顶尖世界前排的地位,那么到底这漫长的技术原始积累过程时怎么度过的呢?没错,就是一次又一次的抄袭。虽然说是抄袭,但是对于技术人员来说,他们并没有任何东西可以抄,客户端技术物理引擎网络技术服务器技术等等的技术,都是要技术人员逐项去攻坚,在腾讯没有找到自己开发出成功的产品的时候,那么抄袭就是最好的一条道路。

没有任何技术开发可以纯粹为了开发而开发的,因为作为计算机公司,每敲下一行不能转化成商业价值的代码,就亏损一分。

必须借着业务来持续的推进技术,才能让公司更加稳健的发展。

所以不难发现,腾讯的抄不是为了抄,而是一种保守稳健的公司发展策略。作为一家计算机公司来说,在早期技术积累的手段来说,确实是妙招。

2.用户是所有产品的核心资源

腾讯产品能发展起来的其中一个依仗就是他庞大的用户群体以及一站式的登录方案。

一个QQ号,能使用腾讯的所有产品。

这个策略贯穿了腾讯的所有产品的生命线。

那么问题来了,如果我的产品出现了空缺,此时有其他人补充上来的话,那么肯定就会有用户流失,此时如果为不做防御的话,后果可能不堪设想。

这种防御型的策略也促进了腾讯模仿其他软件商进行开发的策略,这会极大的提高其他软件商竞争的成本,间接的降低的竞争压力,从而降低用户流失率、甚至达到增长。

3.生态才是计算机公司的最终目标

不难发现,一家独大对于计算机公司来说压力实在太大,更多要做的是平台与生态,只有实现平台与生态,才能走进下一阶段的目标。

腾讯通过他先进的技术庞大的用户群,为生态中的第三方开发者提供了非常多的帮助,比如说能简单的解决你的技术难点,产品能快速的变现等等的业务目标。实现与生态共同生长与获利的业务模式。

不难发现,其实第一点和第二点都是为了第三点服务的。

当一回事后诸葛亮,腾讯这个局到底从什么时候开始布,套路到底有多深。

或许当时腾讯也并没有考虑到这一步,只是见一步走一步,但是能发展到今天这种地步,腾讯的技术发展模式也是值得我们深思与学习的