Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点也是蛮拼的
来源:互联网 发布:扫地机知乎 编辑:程序博客网 时间:2024/05/09 06:30
准备工作:1、笔记本4G内存 ,操作系统WIN7
2、工具VMware Workstation
3、虚拟机:CentOS6.4共五台
4、搭建好Hadoop集群( 方便Spark可从HDSF上读取文件,进行实验测试)
实验环境:Hadoop HA集群:
role
192.168.249.130
SY-0130
ActiveNameNode
192.168.249.131
SY-0131
StandByNameNode
192.168.249.132
SY-0132
DataNode1
192.168.249.133
SY-0133
DataNode2
Spark HA集群:
Ip
hostname
role
192.168.249.134
SY-0134
Master
192.168.249.130
SY-0130
StandBy Master
192.168.249.131
SY-0131
worker
192.168.249.132
SY-0132
worker
192.168.249.133
SY-0133
worker
实验环境仅作学习用,4G内存确实蛮拼的,资源非常有限。下周换上几台台式机作集群。
上述SY-0134是新克隆的虚拟机,作为Spark的环境中的Master,原属于Hadoop集群中的4个节点分别作为StandByMaster 和 Worker角色。
关于虚拟机环境设置、网络配置、Hadoop集群搭建参见《Hadoop2.6集群环境搭建》
本文重点关注Spark1.2环境、Zookeeper环境简易搭建,仅作学习与实验原型,且不涉及太多理论知识。
软件安装:(注:用户hadoop登录SY-0134)
1、在节点SY-0134,hadoop用户目录创建toolkit 文件夹,用来保存所有软件安装包,建立labsp文件作为本次实验环境目录。
[hadoop@SY-0134 ~]$ mkdir labsp
[hadoop@SY-0134~]$ mkdir toolkit
我将下载的软件包存放在toolkit中如下
1
2
[hadoop@SY-0134 toolkit]$ ls
hadoop-2.5.2.tar.gz hadoop-2.6.0.tar.gz jdk-7u71-linux-i586.gz scala-2.10.3.tgz spark-1.2.0-bin-hadoop2.3.tgz zookeeper-3.4.6.tar.gz
2、这次实验我下载的Spark包是spark-1.2.0-bin-hadoop2.3.tgz ,Scala版本是2.10.3,Zookeeper是3.4.6。这里需要注意的是,Spark和Scala有版本对应关系,可在Spark官网介绍中找到Spark版本支持的Scala版本。
3、JDK安装及环境变量设置
[hadoop@SY-0134 ~]$ mkdir lab
#我将jdk7安装在lab目录
[hadoop@SY-0134 jdk1.7.0_71]$ pwd
/home/hadoop/lab/jdk1.7.0_71
#环境变量设置:
[hadoop@SY-0134 ~]$ vi .bash_profile
1
2
3
4
5
6
7
8
# User specific environment and startup programs
export JAVA_HOME=/home/hadoop/lab/jdk1.7.0_71
PATH=$JAVA_HOME/binPATHHOME/bin
export PATH
export CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar
#设置生效
[hadoop@SY-0130 ~]$ source .bash_profile
4、Scala安装及环境变量设置
我将scala解压到/home/hadoop/labsp/scala-2.10.3位置。
修改.bash_profile文件
增加:export SCALA_HOME=/home/hadoop/labsp/scala-2.10.3
修改:PATH=$JAVA_HOME/binPATHHOME/binSCALA_HOME/bin
#设置生效
[hadoop@SY-0130 ~]$ source .bash_profile
检验Scala是否安装好:
[hadoop@SY-0134 ~]$ scala
Welcome to Scala version 2.10.3 (Java HotSpot(TM) Client VM, Java 1.7.0_71).
上述显示安装成功。
5、Spark安装及环境配置
我将spark解压到/home/hadoop/labsp/spark1.2_hadoop2.3位置。下载的这个包是预编译包。
修改.bash_profile文件
增加:export SPARK_HOME=/home/hadoop/labsp/spark1.2_hadoop2.3
[hadoop@SY-0130 ~]$ source .bash_profile
#修改spark-env.sh
[hadoop@SY-0134 conf]$ pwd
/home/hadoop/labsp/spark1.2_hadoop2.3/conf
[hadoop@SY-0134 conf]$vi spark-env.sh
核心配置:
export JAVA_HOME=/home/hadoop/lab/jdk1.7.0_71
export SCALA_HOME=/home/hadoop/labsp/scala-2.10.3
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=SY-0134:2181,SY-0130:2181,SY-0131:2181,SY-0132:2181,SY-0133:2181 -Dspark.deploy.zookeeper.dir=/spark"
至此JDK,Scala,Spark 安装及环境变量设置好,当然上述配置步骤也可一次修改完成。
6、Zookeeper安装
我将zookeeper解压到/home/hadoop/labsp/zookeeper-3.4.6位置。
#配置zoo.cfg文件
[hadoop@SY-0134 zookeeper-3.4.6]$ pwd
/home/hadoop/labsp/zookeeper-3.4.6
[hadoop@SY-0134 zookeeper-3.4.6]$ mkdir data
[hadoop@SY-0134 zookeeper-3.4.6]$ mkdir datalog
[hadoop@SY-0134 zookeeper-3.4.6]$ cd conf
[hadoop@SY-0134 conf]$ cp zoo_sample.cfg zoo.cfg
[hadoop@SY-0134 conf]$ vi zoo.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/hadoop/labsp/zookeeper-3.4.6/data
dataLogDir=/home/hadoop/labsp/zookeeper-3.4.6/datalog
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
server.1=SY-0134:2888:3888
server.2=SY-0130:2888:3888
server.3=SY-0131:2888:3888
server.4=SY-0132:2888:3888
server.5=SY-0133:2888:3888
#配置myid文件
[hadoop@SY-0134 data]$ pwd
/home/hadoop/labsp/zookeeper-3.4.6/data
输入1进入SY-0134的zookeeper中的myid文件
echo "1"> home/hadoop/labsp/zookeeper-3.4.6/data/myid
7、SSH免密码登录
虽然在Hadoop集群中,SY-0130,能够免密码登录到SY-0131,SY-0132,SY-0133 。
但是在本次Spark集群中,Master为SY-0134 ,他需要能够免密码登录到SY-0130,SY-0131,SY-0132,SY-0133。
#我是先在SY-0134中,生成公钥。
[hadoop@SY-0134 ~]$ ssh-keygen -t rsa
[hadoop@SY-0134 ~]$ cd .ssh
[hadoop@SY-0134 .ssh]$ ls
id_rsa id_rsa.pub known_hosts
#将id_rsa.pub文件拷贝给SY-0130
[hadoop@SY-0134 .ssh]$ scp id_rsa.pub hadoop@SY-0130:~/.ssh/authorized_keys
#在SY-0130中,生成公钥。
[hadoop@SY-0130 ~]$ ssh-keygen -t rsa
[hadoop@SY-0130 ~]$ cd .ssh
[hadoop@SY-0130 .ssh]$ ls
authorized_keys id_rsa id_rsa.pub known_hosts
#将id_rsa.pub文件的内容追加写入到authorized_keys中。稍微有点特殊。
[hadoop@SY-0130 .ssh]$ cat id_rsa.pub >>authorized_keys
#将SY-0130下的authorized_keys文件使用SCP命令复制到SY-0131,SY-0132,SY-0133 。
8、其他节点Spark,Scala, zookeeper安装
上述7步仅完成了SY-0134 ,Spark,Scala, Zookeeper的安装,须将三个安装文件目录SCP命令拷贝到SY-0130,SY-0131,SY-132,SY-0133目录,并且同样设置环境变量。
[hadoop@SY-0134 labsp]$ ls
scala-2.10.3 spark1.2_hadoop2.3 zookeeper-3.4.6
另外一点,Zoookeeper 的Server在不同节点上,myid文件内容不一样。
echo "1"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0134
echo "2"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0130
echo "3"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0131
echo "4"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0132
echo "5"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0133
集群启动测试:1、在5个节点上分别启动zookeeper .
[hadoop@SY-0134 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0130 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0131 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0132 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0133 zookeeper-3.4.6]$ bin/zkServer.sh start
2、在SY-0134启动 Spark Master
1
2
3
4
5
[hadoop@SY-0134 spark1.2_hadoop2.3]$ sbin/start-all.sh
starting org.apache.spark.deploy.master.Master, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.master.Master-1-SY-0134.out
SY-0133: starting org.apache.spark.deploy.worker.Worker, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.worker.Worker-1-SY-0133.out
SY-0132: starting org.apache.spark.deploy.worker.Worker, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.worker.Worker-1-SY-0132.out
SY-0131: starting org.apache.spark.deploy.worker.Worker, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.worker.Worker-1-SY-0131.out
3、在SY-0130启动 Standby Spark Master
[hadoop@SY-0130 spark1.2_hadoop2.3]$ sbin/start-master.sh
starting org.apache.spark.deploy.master.Master, logging to /lab/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.master.Master-1-SY-0130.out
有了这样的实验环境,就可以继续深入学习Spark运行架构、SparkSQL等知识啦.
转自:http://www.cnblogs.com/xiejin/p/4213082.html
2、工具VMware Workstation
3、虚拟机:CentOS6.4共五台
4、搭建好Hadoop集群( 方便Spark可从HDSF上读取文件,进行实验测试)
实验环境:Hadoop HA集群:
Ip
hostnamerole
192.168.249.130
SY-0130
ActiveNameNode
192.168.249.131
SY-0131
StandByNameNode
192.168.249.132
SY-0132
DataNode1
192.168.249.133
SY-0133
DataNode2
Spark HA集群:
Ip
hostname
role
192.168.249.134
SY-0134
Master
192.168.249.130
SY-0130
StandBy Master
192.168.249.131
SY-0131
worker
192.168.249.132
SY-0132
worker
192.168.249.133
SY-0133
worker
实验环境仅作学习用,4G内存确实蛮拼的,资源非常有限。下周换上几台台式机作集群。
上述SY-0134是新克隆的虚拟机,作为Spark的环境中的Master,原属于Hadoop集群中的4个节点分别作为StandByMaster 和 Worker角色。
关于虚拟机环境设置、网络配置、Hadoop集群搭建参见《Hadoop2.6集群环境搭建》
本文重点关注Spark1.2环境、Zookeeper环境简易搭建,仅作学习与实验原型,且不涉及太多理论知识。
软件安装:(注:用户hadoop登录SY-0134)
1、在节点SY-0134,hadoop用户目录创建toolkit 文件夹,用来保存所有软件安装包,建立labsp文件作为本次实验环境目录。
[hadoop@SY-0134 ~]$ mkdir labsp
[hadoop@SY-0134~]$ mkdir toolkit
我将下载的软件包存放在toolkit中如下
1
2
[hadoop@SY-0134 toolkit]$ ls
hadoop-2.5.2.tar.gz hadoop-2.6.0.tar.gz jdk-7u71-linux-i586.gz scala-2.10.3.tgz spark-1.2.0-bin-hadoop2.3.tgz zookeeper-3.4.6.tar.gz
2、这次实验我下载的Spark包是spark-1.2.0-bin-hadoop2.3.tgz ,Scala版本是2.10.3,Zookeeper是3.4.6。这里需要注意的是,Spark和Scala有版本对应关系,可在Spark官网介绍中找到Spark版本支持的Scala版本。
3、JDK安装及环境变量设置
[hadoop@SY-0134 ~]$ mkdir lab
#我将jdk7安装在lab目录
[hadoop@SY-0134 jdk1.7.0_71]$ pwd
/home/hadoop/lab/jdk1.7.0_71
#环境变量设置:
[hadoop@SY-0134 ~]$ vi .bash_profile
1
2
3
4
5
6
7
8
# User specific environment and startup programs
export JAVA_HOME=/home/hadoop/lab/jdk1.7.0_71
PATH=$JAVA_HOME/binPATHHOME/bin
export PATH
export CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar
#设置生效
[hadoop@SY-0130 ~]$ source .bash_profile
4、Scala安装及环境变量设置
我将scala解压到/home/hadoop/labsp/scala-2.10.3位置。
修改.bash_profile文件
增加:export SCALA_HOME=/home/hadoop/labsp/scala-2.10.3
修改:PATH=$JAVA_HOME/binPATHHOME/binSCALA_HOME/bin
#设置生效
[hadoop@SY-0130 ~]$ source .bash_profile
检验Scala是否安装好:
[hadoop@SY-0134 ~]$ scala
Welcome to Scala version 2.10.3 (Java HotSpot(TM) Client VM, Java 1.7.0_71).
上述显示安装成功。
5、Spark安装及环境配置
我将spark解压到/home/hadoop/labsp/spark1.2_hadoop2.3位置。下载的这个包是预编译包。
修改.bash_profile文件
增加:export SPARK_HOME=/home/hadoop/labsp/spark1.2_hadoop2.3
修改:PATH=$JAVA_HOME/binPATHHOME/binSCALA_HOME/bin:$SPARK_HOME/bin
#设置生效[hadoop@SY-0130 ~]$ source .bash_profile
#修改spark-env.sh
[hadoop@SY-0134 conf]$ pwd
/home/hadoop/labsp/spark1.2_hadoop2.3/conf
[hadoop@SY-0134 conf]$vi spark-env.sh
核心配置:
export JAVA_HOME=/home/hadoop/lab/jdk1.7.0_71
export SCALA_HOME=/home/hadoop/labsp/scala-2.10.3
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=SY-0134:2181,SY-0130:2181,SY-0131:2181,SY-0132:2181,SY-0133:2181 -Dspark.deploy.zookeeper.dir=/spark"
至此JDK,Scala,Spark 安装及环境变量设置好,当然上述配置步骤也可一次修改完成。
6、Zookeeper安装
我将zookeeper解压到/home/hadoop/labsp/zookeeper-3.4.6位置。
#配置zoo.cfg文件
[hadoop@SY-0134 zookeeper-3.4.6]$ pwd
/home/hadoop/labsp/zookeeper-3.4.6
[hadoop@SY-0134 zookeeper-3.4.6]$ mkdir data
[hadoop@SY-0134 zookeeper-3.4.6]$ mkdir datalog
[hadoop@SY-0134 zookeeper-3.4.6]$ cd conf
[hadoop@SY-0134 conf]$ cp zoo_sample.cfg zoo.cfg
[hadoop@SY-0134 conf]$ vi zoo.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/hadoop/labsp/zookeeper-3.4.6/data
dataLogDir=/home/hadoop/labsp/zookeeper-3.4.6/datalog
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
server.1=SY-0134:2888:3888
server.2=SY-0130:2888:3888
server.3=SY-0131:2888:3888
server.4=SY-0132:2888:3888
server.5=SY-0133:2888:3888
#配置myid文件
[hadoop@SY-0134 data]$ pwd
/home/hadoop/labsp/zookeeper-3.4.6/data
输入1进入SY-0134的zookeeper中的myid文件
echo "1"> home/hadoop/labsp/zookeeper-3.4.6/data/myid
7、SSH免密码登录
虽然在Hadoop集群中,SY-0130,能够免密码登录到SY-0131,SY-0132,SY-0133 。
但是在本次Spark集群中,Master为SY-0134 ,他需要能够免密码登录到SY-0130,SY-0131,SY-0132,SY-0133。
#我是先在SY-0134中,生成公钥。
[hadoop@SY-0134 ~]$ ssh-keygen -t rsa
[hadoop@SY-0134 ~]$ cd .ssh
[hadoop@SY-0134 .ssh]$ ls
id_rsa id_rsa.pub known_hosts
#将id_rsa.pub文件拷贝给SY-0130
[hadoop@SY-0134 .ssh]$ scp id_rsa.pub hadoop@SY-0130:~/.ssh/authorized_keys
#在SY-0130中,生成公钥。
[hadoop@SY-0130 ~]$ ssh-keygen -t rsa
[hadoop@SY-0130 ~]$ cd .ssh
[hadoop@SY-0130 .ssh]$ ls
authorized_keys id_rsa id_rsa.pub known_hosts
#将id_rsa.pub文件的内容追加写入到authorized_keys中。稍微有点特殊。
[hadoop@SY-0130 .ssh]$ cat id_rsa.pub >>authorized_keys
#将SY-0130下的authorized_keys文件使用SCP命令复制到SY-0131,SY-0132,SY-0133 。
8、其他节点Spark,Scala, zookeeper安装
上述7步仅完成了SY-0134 ,Spark,Scala, Zookeeper的安装,须将三个安装文件目录SCP命令拷贝到SY-0130,SY-0131,SY-132,SY-0133目录,并且同样设置环境变量。
[hadoop@SY-0134 labsp]$ ls
scala-2.10.3 spark1.2_hadoop2.3 zookeeper-3.4.6
另外一点,Zoookeeper 的Server在不同节点上,myid文件内容不一样。
echo "1"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0134
echo "2"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0130
echo "3"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0131
echo "4"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0132
echo "5"> home/hadoop/labsp/zookeeper-3.4.6/data/myid #SY-0133
集群启动测试:1、在5个节点上分别启动zookeeper .
[hadoop@SY-0134 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0130 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0131 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0132 zookeeper-3.4.6]$ bin/zkServer.sh start
[hadoop@SY-0133 zookeeper-3.4.6]$ bin/zkServer.sh start
2、在SY-0134启动 Spark Master
1
2
3
4
5
[hadoop@SY-0134 spark1.2_hadoop2.3]$ sbin/start-all.sh
starting org.apache.spark.deploy.master.Master, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.master.Master-1-SY-0134.out
SY-0133: starting org.apache.spark.deploy.worker.Worker, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.worker.Worker-1-SY-0133.out
SY-0132: starting org.apache.spark.deploy.worker.Worker, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.worker.Worker-1-SY-0132.out
SY-0131: starting org.apache.spark.deploy.worker.Worker, logging to /home/hadoop/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.worker.Worker-1-SY-0131.out
3、在SY-0130启动 Standby Spark Master
[hadoop@SY-0130 spark1.2_hadoop2.3]$ sbin/start-master.sh
starting org.apache.spark.deploy.master.Master, logging to /lab/labsp/spark1.2_hadoop2.3/sbin/../logs/spark-hadoop-org.apache.spark.deploy.master.Master-1-SY-0130.out
有了这样的实验环境,就可以继续深入学习Spark运行架构、SparkSQL等知识啦.
转自:http://www.cnblogs.com/xiejin/p/4213082.html
0 0
- Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点也是蛮拼的
- Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点也是蛮拼的
- Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点
- Spark1.6.1集群环境搭建——Standalone模式HA
- spark1.3.0-hadoop2.4集群环境搭建(Standalone)
- Spark1.5 +Zookeeper HA 集群搭建
- Spark1.0.0 Standalone HA的实现
- Spark1.0.0 Standalone HA的实现
- Spark1.0.0 Standalone HA的实现
- spark1.4的集群搭建
- 搭建5个节点的hadoop集群环境(CDH5)
- 搭建5个节点的hadoop集群环境(CDH5)
- 搭建5个节点的hadoop集群环境(CDH5)
- Spark1.3.1 Standalone 基于文件系统的 HA 部署
- spark standalone 集群环境搭建
- Spark自带的集群模式(Standalone),Spark/Spark-ha集群搭建
- 搭建多个节点的hadoop集群环境(CDH)
- spark1.6.1集群部署(standalone)
- 浅谈微信卡券功能开发(2)
- 抓取网上图片,并生成缩略图存入本地
- poj3087
- HDU 2089 不要62(数位DP·记忆化搜索)
- Ruby中 respond_to? 和 send 的用法
- Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点也是蛮拼的
- Andorid消息处理机制
- Spark中文手册-编程指南
- 使用 Drools 规则引擎实现业务逻辑
- 【图论】【桥】【HDU4612】Warm up
- ASP.NET 5 将于2016年一季度发布
- HDU 3555 Bomb (简单数位DP)
- AFNetworking下载网络相关的附件(音视频)等到本地app包中做离线来提高用户体验
- 采用首次适应算法的动态分区分配模拟