成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

使用SAE和Gitcafe開發(fā)網(wǎng)站應(yīng)用

liuhh / 575人閱讀

摘要:原文使用和開發(fā)網(wǎng)站應(yīng)用在領(lǐng)域目前看來新浪云走的比較早,也比較成熟。新浪云需要使用新浪微博的帳號才能登錄和使用。目前,新浪云需要進行實名認證才能創(chuàng)建個以上的應(yīng)用,所以推薦進行實名認證。

原文:使用SAE和Gitcafe開發(fā)網(wǎng)站應(yīng)用

在PaaS領(lǐng)域目前看來新浪云走的比較早,也比較成熟。相比IaaS,PaaS更能為企業(yè)或個人帶來成本上的節(jié)約。本文以php為例,記錄了如何在新浪云上注冊創(chuàng)建自己的web項目,如何在本地構(gòu)建模擬環(huán)境,并使用Gitcafe的自動部署功能,使得只需要進行一次git push即可將代碼發(fā)布到新浪云上。不了解的朋友可以參考。

創(chuàng)建應(yīng)用

先是各種注冊。新浪云需要使用新浪微博的帳號才能登錄和使用。

由于新浪云屬于PaaS(即提供軟件運行環(huán)境,而不是虛擬主機或者空間),收費模式是根據(jù)訪問量,按量收費的,所以我們無需關(guān)注服務(wù)器的任何指標(biāo),我們要做的只是創(chuàng)建一個應(yīng)用。目前,新浪云需要進行實名認證才能創(chuàng)建2個以上的應(yīng)用,所以推薦進行實名認證。

創(chuàng)建應(yīng)用的界面如下:

可以看到,我們的應(yīng)用將被host在sinaapp.com這個域名下,我們能夠設(shè)置的子域名(App name)顯然是全局唯一的,先到先得。除了應(yīng)用的基本信息外,還需要選擇應(yīng)用使用的編程語言、框架、模板等。PHP語言的框架和模板十分豐富,而Python和Java則沒有什么可用的框架或者模板。我們這里使用PHP空應(yīng)用,創(chuàng)建的的應(yīng)用名假設(shè)為testapp,下面會用到。

創(chuàng)建好應(yīng)用之后,需要配置應(yīng)用所使用的各種軟件或平臺服務(wù),幾個比較基本的配置如下:

應(yīng)用管理-代碼管理中,創(chuàng)建一個版本,這個版本號建議填1

服務(wù)管理-MySQL中,開啟MySQL的功能。除非你的應(yīng)用不需要數(shù)據(jù)庫支持,一般MySQL是肯定要開的。管理MySQL使用的是phpmyadmin。

默認情況下,在代碼管理中,可以將代碼打包上傳到應(yīng)用,或者使用SVN提交,關(guān)于SVN參見代碼管理中的說明。我們的重點是使用Git進行提交。

Gitcafe上創(chuàng)建代碼倉庫 注冊

為了使用Git提交代碼,我們注冊使用Gitcafe。因為Gitcafe可以設(shè)置自動將代碼推送到新浪云上。

  

GitCafe是一個跟Github十分相似的代碼托管平臺,本人體驗下來感覺還可以,除了界面綠的我扎眼外...

注冊好之后,為了方便進行g(shù)it提交可以配置一下公鑰。找到你個人電腦如下路徑的文件:

cd ~/.ssh/id_rsa.pub

將其中的內(nèi)容復(fù)制粘貼到Gitcafe網(wǎng)站的SSH公鑰管理處,這樣以后在提交代碼的時候就不需要輸入用戶名和密碼了。

創(chuàng)建倉庫

我們需要創(chuàng)建一個倉庫,這更github沒有什么區(qū)別,唯一的重點在于設(shè)置自動部署到SAE

第一次使用這個功能可能需要你OAuth驗證一下,這很簡單。然后Gitcafe就可以fetch到你在新浪上的創(chuàng)建的應(yīng)用和相應(yīng)的版本了。選好保存即可。

  

目前Gitcafe對新浪的授權(quán)沒有做自動刷新,這也許是新浪的Policy,這樣會導(dǎo)致幾天以后,這個授權(quán)會過期,屆時可能需要重新綁定一下。希望Gitcafe能夠改善一下。

創(chuàng)建好應(yīng)用后,可以根據(jù)提示在本地初始化應(yīng)用并提交初始化到Gitcafe。不過這里,為了給后面本地模擬SAE環(huán)境埋下伏筆,我對命令稍作改變:

首先在你本地合適的地方創(chuàng)建一個文件夾專門用來存放SAE的應(yīng)用代碼,比如sae

mkdir sae

然后使用如下命令:

cd sae
mkdir testapp
cd testapp
mkdir 1
cd 1
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin ...
git push -u origin master

上面的命令在遠程倉庫地址的地方留了...,你需要自己填寫,這取決于你的遠程倉庫地址。另外值得注意的是,需要創(chuàng)建一個以app名命名的文件夾,而且這個文件夾下需要有一個1的文件夾,這里的1代表app的版本號,代碼部分是放在1這個文件夾下的。

如果上面的步驟沒有問題的話,此時由于我們創(chuàng)建了README.md,所以這個文件會被自動同步到新浪云上。

配置本地環(huán)境

接下來我們需要配置一個本地執(zhí)行環(huán)境,以模擬SAE的運行環(huán)境,從而調(diào)試代碼。從這里下載最新的模擬環(huán)境,這里以PHP環(huán)境為例

下載解壓后,可以發(fā)現(xiàn),模擬環(huán)境自帶apache、php、redis等軟件,我們需要配置sae.conf文件,下面是這個文件重要配置項的說明:

DocumentRoot sae應(yīng)用的根路徑,相當(dāng)于我們上面創(chuàng)建的sae文件夾,模擬環(huán)境每次都是從這個文件夾下的文件夾來判斷有哪些應(yīng)用

http_port 模擬環(huán)境啟動后apache所使用的http端口

mysql_* 模擬環(huán)境并沒有自帶mysql,需要使用你本地或者遠程的mysql,所以需要在這里配置這些參數(shù)

配置好這些后,用管理員身份啟動init.cmd

如果需要修改php的配置的話,可能需要修改php.sae這個文件。這個文件實際上就是一個php的配置文件,模擬器每次啟動的時候,都會把php.sae的內(nèi)容復(fù)制到php.ini中。不過這里可能有一個bug,對于php.sae中的配置項disable_functions不能正確的復(fù)制到php.ini中,導(dǎo)致無法正常使用模擬環(huán)境,不知道目前修復(fù)了沒有。我的解決辦法是在php.sae中把disable_functions的值留空。

模擬環(huán)境啟動后,可以在本地通過http://應(yīng)用名.sinaapp.com:端口的形式來訪問應(yīng)用,比如:http://testapp.sinaapp.com:8081

模擬環(huán)境會在代碼目錄下創(chuàng)建config.yaml或者.appconfig,這兩個文件是不能通過代碼包的方式上傳到SAE的,否則會出錯。所以,我們需要在.gitignore中忽略這兩個文件,讓它們不被提交到Gitcafe,于是就不會被傳到SAE。

如果將來有第二個應(yīng)用的話,只需要在sae目錄下創(chuàng)建相應(yīng)的app名字命名的文件夾和版本文件夾即可,模擬器會自動識別它們。當(dāng)然你也可以使用模擬器的相關(guān)命令完整對應(yīng)用的管理操作。詳情請參考相關(guān)工具 - SAE文檔中心

使用mysql

為了在模擬環(huán)境中使用mysql,除了上面提到的基本配置外,還有兩點需要注意:

mysql數(shù)據(jù)庫名需要是app_+應(yīng)用名的形式,比如應(yīng)用名為testapp,那么對應(yīng)的mysql數(shù)據(jù)庫名必須是app_testapp

在php中訪問數(shù)據(jù)庫需要使用SAE定義好的常量,在實際的環(huán)境中也是這樣的。

下面是一個使用pdo連接數(shù)據(jù)庫的代碼:

php$dbh = "mysql:host=" . SAE_MYSQL_HOST_M . ";port=" . SAE_MYSQL_PORT . ";dbname=" . SAE_MYSQL_DB;
$ops = array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
$ops = array();
return new PDO($dbh, SAE_MYSQL_USER, SAE_MYSQL_PASS, $ops);

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/20925.html

相關(guān)文章

  • 實用的IT類網(wǎng)站及工具大集合

    摘要:整理的一些實用的類網(wǎng)站及工具。鏈接云適配有時候我們做出的網(wǎng)站沒有用到響應(yīng)式布局,也可能我們的網(wǎng)站的像素寬度已經(jīng)規(guī)定成具體的多少像素了。同時提供多個開放,功能實用,非常強大。 整理的一些實用的IT類網(wǎng)站及工具。 1.聚合數(shù)據(jù) 大家在開發(fā)過程中,可能會用到各種各樣的數(shù)據(jù),想找一些接口來提供一些數(shù)據(jù)。比如天氣預(yù)報查詢,火車時刻表查詢,彩票查詢,身份證查詢等等。有了這個接口,直接調(diào)用即可。各種...

    rollback 評論0 收藏0
  • 應(yīng)用云平臺的可用性——從新浪SAE看云平臺設(shè)計

    摘要:網(wǎng)絡(luò)可用性更多的會依賴電信運營商的服務(wù)能力。目前網(wǎng)絡(luò)接入支持電信聯(lián)通教育移動等,真正實現(xiàn)了國內(nèi)大的運營商網(wǎng)絡(luò)的覆蓋,這在國內(nèi)是很罕見的。 一、可用性如何定義 可用性(availability)是關(guān)于系統(tǒng)可供使用時間的表述,以不可用的時間為衡量指標(biāo)。不可用時間越短,可用性越高。通常用n個9來描述。比如4個9的可用性,則是指一年中不可用時間在52分鐘內(nèi),平均每周不可用時間在1分鐘。 可靠性...

    yanbingyun1990 評論0 收藏0
  • SAE的Tornado開發(fā)經(jīng)驗

    摘要:對,并不是非阻塞的快,而且開發(fā)的快,極適合做前后端分離以傳遞數(shù)據(jù)的模式。的選擇既不簡潔又缺乏一致性,但建表重連包裝連接池這些總得有人做??s短重連時間因為超時時間比的通用配置要短,所以的重連時間也必須同步,否則會報的數(shù)據(jù)庫錯誤。 對程序員來說,新浪云SAE無疑是國內(nèi)最好的PaaS平臺,實名認證和綁定移動端得到的免費云豆,可以讓你在做出一款能抬起頭的應(yīng)用之前不愁吃喝。 所以這一年里做過的網(wǎng)...

    stackfing 評論0 收藏0
  • Git自由之章 - 關(guān)于SSH 公鑰

    摘要:關(guān)于首先是一種網(wǎng)絡(luò)協(xié)議,用于計算機之間的加密登錄。第二種級別是基于公開密匙加密機制的安全驗證。前者是私鑰,注意保管,后者是公鑰如下添加到登錄之后。 簡述 什么是 Git 的 ssh key?這個問題其實我也很困惑,所以我才專門分享這篇關(guān)于 ssh key 的文章,著重分析了解什么是 ssh key,它有什么用,怎么能用好它?本文主要由從網(wǎng)上收集資料加上自己的經(jīng)驗匯總而成的經(jīng)驗干貨,可以...

    IamDLY 評論0 收藏0

發(fā)表評論

0條評論

liuhh

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<