2014年3月2日 星期日

[聽演講的 snippet 筆記] GDG Taipei #2 - Introduction to Google App Engine for PHP

離上次聽這個活動有好一陣子了,不過還是把筆記留起來,雖然很片段...,可能各位客官看不懂,抱歉了...,可以看看簡報網址的內容 :)
活動照片:





介紹 GAE
  • 彈性的 scalable
  • GAE 設定還算簡單 configuration Tool :
    • app.yaml - Depolyment
    • appcfg.py - Local Dev Server
    • dev_appserver.py - App Descriptor
  • GAE: 優點, 部署/scalable 非常快
  • PHP: 優點, 開發快
  • GAE for PHP :
    • 不是所有的 function 都有支援 (supported functions, ex: 沒有 curl)
    • supported the stream (gs, http, file, no phar)
    • 使用外面的 framework (ex:yii) 還沒有被完整的測試過 (需要 3rd party 來做,像 wordpress 就有 GAE 的 3rd party) (Need community and 3rd party)。
Cloud Storage
  • require 一個 cloudStorageTools.php
  • 不要被收費的方法: cloudStorageTools::createUploadUrl('...', $options); upload completed 在寫入。
cloud SQL
  • cloud SQL 是 MySQL 5.5。
Memcache API
  • 用來 speed up DB Queryies. 直接從 memory 拿出來,缺點是他不是 real time 的 (什麼時候會更新: 有設 expr time 的時候)
  • Expiration using LRU (最久沒有用的) principle。
  • memcache 優點就是在 scale 的時候。
  • key and data size is limited.
  • Memcache 跟 Memcached 是兩個不同的 API 。差別在於有沒有 return。
Users API
Test Queues
  • background processing
  • 目前只有支援 push queues
付費的 APP 才有 Socket


安裝 SDK
  • Mac : GAE php SDK + MySQL
  • Windows: Python + GAE php SDK + MySQL
  • Linux: Pythod + php + GAE php SDK + MySQL (locale php cgi)


建立一個新 Project (App Engine)
  • Project Name 隨時都可以改
  • Project Id 不能改
安裝 cloud platform
  • 要先進 console (Google Developers Console https://play.google.com/apps/publish/signup/)
  • 一開始要先建立 Cloud SQL (建 DB) -> Create Instance (Instance ID 是 project ID)
  • 怎麼連 Database? (舊版的界面可以下 sql command)
  • 先 request 一個 ip address (一按下去就開始付錢了)( 這個要到的 ip address 這就是當你用 mysql 連線工具的 host, 然後帳號是 root )


一個簡單的 project structure
application: regal-center-453
version: 1
runtime: php
api_version: 1

handlers:
- url: /stylesheets
  static_dir: stylesheets

- url: /.*
  script: helloworld.php

Deploy
  • To App Engine
    • Oauth2 : 可以不用一直打密碼


你的 Doamin:
  • [project Id 專案id].appspot.com
  • ex: regal-center-453.appspot.com
GAE with Wordpress
  • Running WordPress in GAE
  • app.yaml 第10, 15, 20 行 要拿掉 $
  • wp-config.php 要讓 password 空白(leave password empty when connect to cloud SQL)
  • install plugin before upload


步驟筆記 :

  1. Download 一個 wordpress
  2. 解壓縮到你的 project folder
  3. 要設定 app.yaml, cron.yaml, php.ini (toturial 上面都有,通常 copy toturial 的內容直接拿來改就可以用了)
  4. 要改 wp-config.php,defined('DB_PASSWORD','');
  5. 指令: dev_appserver.py 專案 older

沒有留言:

張貼留言

若你看的文章,時間太久遠的問題就別問了,因為我應該也忘了... XD

Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...