LoginSignup
5
2

More than 5 years have passed since last update.

paiza.IOを使ってみた

Posted at

24のプログラミング言語をブラウザ上で実行できる「paiza.IO」 環境構築の手間ゼロ - ITmedia ニュース
http://www.itmedia.co.jp/news/articles/1411/18/news157.html

久々にピピンとくるサービスが出てきたので早速使ってみる。

paiza.IOとは

  • 使い捨ての仮想マシン上でプログラムを実行できるサービス
  • ブラウザ上で提供されるエディタで書いてそのまま実行、すぐ結果が返るってくる
  • 特にサインアップしなくても使える。シンプルイズザベストを素で行くサイト
  • プログラム実行タイムアウトは2秒。超えると実行エラー
  • メモリは512MBまで。
  • 仮想マシンに書きこんだデータは実行後消去される(コンテナ仮想化かな?)
  • いろんな言語を使える https://paiza.io/help
  • Ctrl+Enterでコンパイル+実行されるのでキーボードに手をおいたまま使える
  • 外部ネットワークへのアクセスを許可している(ポイント!)
  • スケジュール実行できる(ポイント!)

→ 割りとありがちなサービスかと思いきやこれは夢が広がる

スペックを探ってみる

uname -a
Linux a8c6482f9e09 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

ubuntuらしい。

ps ax
PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:00 sh -c /sbin/ifconfig eth0 > ifconfig.txt; rm ifconfig.txt; /usr/bin/time -v -o exec_time.txt ./run_user runner2 bash Main.sh <exec_stdin.txt >exec_stdout.txt 2>exec_stderr.txt;echo $? > exec_exit_code.txt
   10 ?        S      0:00 /usr/bin/time -v -o exec_time.txt ./run_user runner2 bash Main.sh
   11 ?        S      0:00 bash Main.sh
   12 ?        R      0:00 ps ax

timeコマンドでタイムアウトを見てる。

ifconfig
eth0      Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX  
          inet addr:XXX.XXX.XXX.XXX  Bcast:0.0.0.0  Mask:255.255.0.0
          inet6 addr: XXXX::XXXX:XXXX:XXXX:XXX/XX Scope:Link
          UP BROADCAST  MTU:9001  Metric:1
          RX packets:1 errors:0 dropped:2 overruns:0 frame:0
          TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:78 (78.0 B)  TX bytes:90 (90.0 B)

割り振られるMACアドレスはランダム生成?
IPは実行するたびに最下位+1

cat /proc/cpuinfo
processor   : 7
vendor_id   : GenuineIntel
cpu family  : 6
model       : 62
model name  : Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
stepping    : 4
microcode   : 0x415
cpu MHz     : 2793.340
cache size  : 25600 KB
physical id : 0
siblings    : 8
core id     : 3
cpu cores   : 4
apicid      : 7
initial apicid  : 7
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm xsaveopt fsgsbase smep erms
bogomips    : 5586.68
clflush size    : 64
cache_alignment : 64
address sizes   : 46 bits physical, 48 bits virtual
power management:

8コア

             total       used       free     shared    buffers     cached
Mem:         15039      14635        404       4576        612      11571
-/+ buffers/cache:       2450      12589
Swap:            0          0          0

15GB

cat /sys/class/dmi/id/bios_vendor
cat /sys/class/dmi/id/chassis_vendor
cat /sys/class/dmi/id/product_name
cat /sys/class/dmi/id/sys_vendor
Xen
Xen
HVM domU
Xen

Xenの仮想マシンのようす。
systemdはどうやってコンテナ・仮想化環境を判別しているのか - Qiita
http://qiita.com/ozaki-r/items/39bf059896eb13270209

uptime
 13:31:15 up 5 days,  5:44,  0 users,  load average: 0.52, 0.58, 0.51

しばらく動いているようだ

Filesystem                                              Size  Used Avail Use% Mounted on
rootfs                                                  7.4G  4.5G  2.9G  61% /
none                                                    7.4G  4.5G  2.9G  61% /
tmpfs                                                   7.4G     0  7.4G   0% /dev
shm                                                      64M     0   64M   0% /dev/shm
none                                                    7.4G  4.5G  2.9G  61% /.dockerinit
tmpfs                                                   1.5G  368K  1.5G   1% /etc/resolv.conf
none                                                    7.4G  4.5G  2.9G  61% /etc/hostname
none                                                    7.4G  4.5G  2.9G  61% /etc/hosts
/dev/disk/by-uuid/fe967360-f565-4497-8464-f340e473586c   99G   16G   79G  17% /workspace
tmpfs                                                   7.4G     0  7.4G   0% /proc/kcore

やっぱりdockerだった

cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver XXX.XXX.XXX.XXX
search ap-northeast-1.compute.internal

ネットワーク構成がきになる

none on / type aufs (rw,relatime,si=d600e3653b29f7a6)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
sysfs on /sys type sysfs (ro,relatime)
tmpfs on /dev type tmpfs (rw,nosuid,mode=755)
shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=65536k)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=666)
none on /.dockerinit type tmpfs (ro,relatime)
tmpfs on /etc/resolv.conf type tmpfs (ro,relatime,size=1540096k,mode=755)
none on /etc/hostname type tmpfs (ro,relatime)
none on /etc/hosts type tmpfs (ro,relatime)
/dev/disk/by-uuid/fe967360-f565-4497-8464-f340e473586c on /workspace type ext4 (rw,relatime,data=ordered)
proc on /proc/sys type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/sysrq-trigger type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/irq type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/bus type proc (ro,nosuid,nodev,noexec,relatime)
tmpfs on /proc/kcore type tmpfs (rw,nosuid,mode=755)

カレントディレクトリのフォーマットはext4

cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS"

長期サポート (LTS)

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2