1. 程式人生 > >程式碼線上執行工具(PHP,Java,C++ 等)

程式碼線上執行工具(PHP,Java,C++ 等)

http://www.it1352.com/Onlinetools

支援幾十種語言的線上執行。
缺點:對請求頻率限制太嚴格了,一分鐘不到十次吧。。。可以清理瀏覽器 Cookie 之後重新訪問。必須用示例中的 Rextester 類作為類名。
可以嵌入到自己網站,比如 Java 嵌入語句如下:

<iframe src="http://www.it1352.com/Onlinetools/OnlineCompileCommon/4?c_height=100&r_height=100&code=&autoExecute=true" style="width:520px;height:450px;"
>
</iframe>

引數: c_height—>【原始碼框高度】 r_height—>【結果框高度】 code—>【程式碼片段(需URL編碼)】 autoExecute—>【是否自動執行】

http://demo.php.cn/

專門線上執行 PHP 程式碼的網站,快,程式碼視窗可以自動換行,但預覽視窗不會自動換行,好在可以全屏預覽。PHP 版本是 7.0.8。

http://anycodes.cn/zh/

可以線上執行各種語言,但是 PHP 的版本較低,低於 5.4 。
優點:速度快,穩定,支援多個檔案(目前是兩個)。

http://www.dooccn.com/php/

可以線上執行多種語言,可以選擇 PHP 的多個版本。php5.3 php5.4 php5.5 php5.6 php7。
缺點:速度比較慢。

https://ideone.com

線上執行程式碼,然後生成分享連結。可以把連結發給別人,也可以嵌入網頁。
優點:支援的語言多,版本新。PHP 版本是 7.1.0。
比如,下面這個連結是我執行程式碼後生成的,
https://ideone.com/uIdTu3,對應的分享 JavaScript 程式碼為 <script src="https://ideone.com/e.js/uIdTu3" type="text/javascript" ></script>

https://tool.lu/coderunner/

各種語言都可以線上執行,PHP 的版本是 5.4.16。
登入後可以儲存線上程式碼,可以嵌入部落格。首頁還有各種其他工具。
缺點:不是很穩定,sandbox 經常掛掉。出現這一句 sandbox> exited with status 0 就表示已經掛掉了,需要重新整理重連。

這個應該是作者的部落格
tool.lu技術架構參考這裡,摘抄如下:

背景

一個字,窮!在小流量的情況下,這個應該算是比較經濟的解決方案了吧(各種容災都沒有,監控沒有,服務的吞吐測試沒有)。哈哈哈…

後端的業務處理和服務

整個的網站都放在aliyun的VPS上。
由於工具網站的後端處理比較耗資源,於是將業務處理服務部署到了兩臺VPS上。(aliyun +1 & 美國 +1)
Redis只是做了少量的快取作用,所以圖中並未給出。

Untitled.png

面對前端的一些優化

cdn 現在全部都放在aliyun的VPS上。

  • 使用nginx的 nginx-http-concat 擴充套件合併多個檔案請求。
  • http_image_filter_module 進行一些圖片的實時壓縮計算

域名分別為 s1.tool.lu, s2.tool.lu, s3.tool.lu

爬蟲

現在所有的爬蟲均基於Scrapy編寫,全部部署在 美國的vps上;資料儲存在MariaDB。

虛擬化

主要用於一些不可信任程式碼的執行。

選型Docker,可限制CPU和Mem,不能限制Disk,但是Docker在CentOS6.x下的問題較多,各種坑;最近使用CentOS7搭建之後貌似很Happy。