Skip to content

Instantly share code, notes, and snippets.

@phstudy
phstudy / Spark720pStats.java
Created November 17, 2014 03:58
Spark720pStats
import org.apache.commons.lang.StringUtils;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaSparkContext;
import scala.Tuple2;
import java.util.Arrays;
public class Spark720pStats {
public static void main(String[] args) {
@phstudy
phstudy / ambassador.md
Last active August 29, 2015 14:05
ambassador pattern心得

ambassador pattern用途

由於service consumer跟provider之間網路連結是透過hardcode的, 因此service consumer要切換provider往往不太容易。若用ambassador來切換provider,只需重啟ambassador並連接至新的provider

關係由原本的 (consumer) -> (provider) 變成 (consumer) -> (ambassador) -> (provider)

想像一下,假如今天有n個consumers, 未使用ambassador,你需要重啟每個consumers。若使用ambassador,你只需要重啟一個ambassador。

@phstudy
phstudy / build-rathena.sh
Created July 24, 2014 20:45
script to build study/rathena image
cd rathena && sudo docker build -t "study/rathena" .
@phstudy
phstudy / create-mysql-container.sh
Last active August 29, 2015 14:04
script to spin up docker container for mysql
sudo docker run --name rathena-mysql -e MYSQL_ROOT_PASSWORD=rathena731220 -d mysql
@phstudy
phstudy / create-rathena-container.sh
Created July 24, 2014 20:43
script to spin up docker container for rathena
sudo docker run --name rathena -e AWS=true --link rathena-mysql:mysql -p 6900:6900 -p 6121:6121 -p 5121:5121 -d 'study/rathena:latest'
#sudo docker run --name rathena --link rathena-mysql:mysql --rm -it 'study/rathena:latest' /bin/bash
@phstudy
phstudy / Dockerfile
Last active August 29, 2015 14:04
tomcat7 sample Dockerfile
FROM ubuntu:14.04
MAINTAINER Study Hsueh "ph.study@gmail.com"
# Update Ubuntu
RUN apt-get update
# Install tomcat7
RUN apt-get -y install tomcat7
# Expose 8080 port
@phstudy
phstudy / Vagrantfile
Created July 17, 2014 17:04
a Vagrantfile to spin up a docker ready aws instance in tokyo
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "dummy"
config.ssh.pty = true
@phstudy
phstudy / resize.md
Created May 25, 2014 05:34
resize vagrant box vmdk

cd ~/.vagrant.d/boxes/puppetlab-centos-64-nocm/0/virtualbox/ VBoxManage clonehd "box-disk1.vmdk" "cloned-box-disk1.vdi" --format vdi VBoxManage modifyhd "cloned-box-disk1.vdi" --resize 81920 VBoxManage clonehd "cloned-box-disk1.vdi" "cloned-box-disk1.vmdk" --format vmdk # write down uuid

modify box.ovf

start an new vm and attach cloned-box-disk1.vmdk

fdisk /dev/sdX

@phstudy
phstudy / TestDFSIO_results.log
Created May 19, 2014 10:31
JPS_HA 4 Nodes - 8GB/Node 2NN, 2DN, 2NM (VMs deployed on 4 different HDD and tuned JVM parameters)
----- TestDFSIO ----- : write
Date & time: Mon May 19 17:14:20 CST 2014
Number of files: 10
Total MBytes processed: 10000.0
Throughput mb/sec: 13.56559439686689
Average IO rate mb/sec: 13.863067626953125
IO rate std deviation: 2.1142203063369194
Test exec time sec: 321.241
----- TestDFSIO ----- : write