Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PHPとmBaaSの美味しい関係
Search
KOYAMA Tetsuji
May 21, 2016
Technology
1
2.9k
PHPとmBaaSの美味しい関係
2016年5月21日のPHPカンファレンス福岡2016で発表した資料です。
KOYAMA Tetsuji
May 21, 2016
Tweet
Share
More Decks by KOYAMA Tetsuji
See All by KOYAMA Tetsuji
PIE (PHP Installer for Extensions) をみんなで試そう/piseka-pie
koyhoge
0
79
君はPostScriptなウィンドウシステム 「NeWS」をご存知か?/sunnews
koyhoge
0
900
全日本PHPカンファレンス2024スタンプラリーについて/stamprally-php2024
koyhoge
0
170
日本PHPカンファレンス2024スタンプラリーとその実装/phpcon-stamprally
koyhoge
1
1.7k
日本のPHPカンファレンスの歩みと、その辺もろもろ/phpcon_japan_history
koyhoge
0
300
Inside SWOOLE: 非同期処理はどのようにして動くのか/inside_swoole
koyhoge
0
19k
映画を年300本観る技術/watch_300_movies_in_a_year
koyhoge
0
1.3k
Swooleで実装するPHP非同期処理の世界/phpcondo2019-swoole
koyhoge
3
5.5k
CloudFormation と FaaS のはざま - Kubernetes の設計思想を探る -/cf-faas-k8s
koyhoge
0
1.5k
Other Decks in Technology
See All in Technology
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.5k
re:Inventに行くまでにやっておきたいこと
nagisa53
0
680
猫でもわかるAmazon Q Developer CLI 解体新書
kentapapa
1
130
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
680
デザインとエンジニアリングの架け橋を目指す OPTiMのデザインシステム「nucleus」の軌跡と広げ方
optim
0
120
ざっくり学ぶ 『エンジニアリングリーダー 技術組織を育てるリーダーシップと セルフマネジメント』 / 50 minute Engineering Leader
iwashi86
4
2.7k
serverless team topology
_kensh
3
240
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
350
AIの個性を理解し、指揮する
shoota
2
390
OSSで50の競合と戦うためにやったこと
yamadashy
3
1k
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
150
入院医療費算定業務をAIで支援する:包括医療費支払い制度とDPCコーディング (公開版)
hagino3000
0
120
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Optimizing for Happiness
mojombo
379
70k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Gamification - CAS2011
davidbonilla
81
5.5k
It's Worth the Effort
3n
187
28k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
650
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
GraphQLとの向き合い方2022年版
quramy
49
14k
Transcript
1)1ͱN#BB4ͷ ඒຯ͍ؔ͠ খࢁࢤ !LPZIPHF 1)1ΧϯϑΝϨϯεԬ
BCPVU͍͜΄͛ ‣খࢁࢤ ͜·ͯͭ͡ ‣ϑϦʔϥϯεϓϩάϥϚʔ ‣!LPZIPHF ‣χϑςΟΫϥυNPCJMFCBDLFOE ΤόϯδΣϦετ ‣ࠓظͷΠνΦγΞχϝ ʮ3Fθϩ͔Β࢝ΊΔҟੈքੜ׆ʯ
Θͨ͠ͱN#BB4 ‣ࡢՆΑΓχϑςΟΫϥυNPCJMFCBDLFOE ΤόϯδΣϦετ ‣"OESPJE4%,Wͷॳظ։ൃʹؔΘΔ ‣ϒϩάهࣄΛ͍͔ͭࣥ͘ච ‣ษڧձɾΧϯϑΝϨϯεͰͷN#BB4ൃදճ 
N#BB4 ϞόΠϧόοΫΤϯυ ΞζΞαʔϏε
#BB4 ‣1BB4ͷҰछͱݴ͑Δ ‣αʔόଆػೳҰࣜΛ"1*Խͯ͠ఏڙ ‣εέʔϧʹࣗಈରԠ ‣֤छཧػೳ ‣8FCμογϡϘʔυ ‣ϝʔϧͦͷଞͷ௨
N#BB4 ϞόΠϧ
ϞόΠϧ։ൃͷಛ ‣αʔόαΠυٕज़ʹৄ͘͠ͳ͍ ਓ͍Δ ‣εέʔϧରԠͱ͔উखʹͬͯ΄͍͠ ‣ϞόΠϧ͚ʹಛԽͨ͠ػೳ ‣ϓογϡ௨ ‣Ґஔใ ‣ՄೳͳΒαʔόϨεͰ͍͖͍ͨ
None
N#BB4Λ Ͳ͏ͬͯ͏ͷ͔
4%, ‣J04ɺ"OESPJEͦΕͧΕʹ༻ҙ͞Ε͍ͯΔ ‣J04TXJGUधཁ͕ߴ·͍ͬͯΔ ‣αʔϏεʹΑͬͯͦΕҎ֎ ‣+BWB4DSJQU /PEF )5.- ‣$ 6OJUZ
‣1)1 ‣3&45"1*
N#BB4Ͱ Կ͕Ͱ͖Δͷ͔
N#BB4ͷػೳ ‣σʔλϕʔε ‣Ϣʔβʔೝূ ‣ϑΝΠϧετϨʔδ ‣ϓογϡ௨ ‣ͦͷଞ ‣ߦಈղੳɺΫϥογϡϨϙʔτɺαʔόϩδο ΫɺͳͲͳͲʜ
σʔλϕʔε ‣σʔλετΞɺϦΞϧλΠϜ%#ͳͲͱݺΕΔ ‣ΩʔόϦϡʔετΞతͳߴ%# ‣ಠࣗͷΫΤϦػೳ ‣"1*Λݺͼग़͚ͩ͢ͳͷͰɺεέʔϧউखʹߦ ΘΕΔ ‣ͪΖΜαʔόӡ༻ඞཁͳ͍
Ϣʔβೝূ ‣ొϢʔβͷཧ ‣,74తʹҙͷଐੑΛࢦఆՄೳ ‣0"VUIೝূαϙʔτ͢Δ߹ ‣άϧʔϓɺ"$-ػೳΛ࣋ͭ߹͋Δ
ϑΝΠϧετϨʔδ ‣େ͖Ίͷσʔλͷอଘॴ ‣ը૾ύονσʔλͳͲ ‣"NB[PO4తͳͷ ‣"$-Λ࣋ͭ߹
ϓογϡ௨ ‣ϓϥοτϑΥʔϜ͝ͱͷҧ͍ ‣J04"1/4 "QQMF1VTI/PUJGJDBUJPO 4FSWJDF ‣"OESPJE($. (PPHMF$MPVE.FTTBHJOH ‣େྔʹૹΔʹϊϋ͕͍Δ
‣ಉ࣌৴ɺݸผ৴ ‣͜ͷͨΊ͚ͩʹN#BB4Λ͏ਓଟ͍
ͦͷଞ ‣αʔόϩδοΫ͕໘ന͍ ‣"NB[PO-BNCEB "[VSF'VODUJPOTͳͲ ‣"1*ͰΩοΫͤͯ͞Ұ࿈ͷॲཧΛόονతʹ ‣Ϣʔβʔߦಈղੳ͜Ε͔Βϗοτ ‣ͦΕઐͷαʔϏε͋Δ
N#BB4 ࠷ۙͷτϐοΫ
1BSTFͷαʔϏεऴྃ ‣'BDFCPPLʹങऩ͞ΕͨN#BB4քͷڊਓ ‣݄ʹαʔϏεΛશऴྃ ‣1BSTF4FSWFSΛ044ͱͯ͠ެ։ ‣Ҡߦɺӡ༻ͷϊϋͷใަ͕ίϛϡχςΟ ͰΜ ‣ࠃͰࠔ͍ͬͯΔࣄۀձࣾଟ͍
(PPHMF'JSFCBTF ‣݄ʹ(PPHMFʹങऩ ‣(PPHMF*0ͰαʔϏε༰ͷେ෯มߋ ‣"OBMZUJDTແঈɾແ੍ݶ ‣ϓογϡ௨ແঈɾແ੍ݶ ‣Ϋϥογϡղੳແঈɾແ੍ݶ ‣ϓϥϯγϯϓϧʹ ‣ແঈɺ݄ɺैྔ
χϑςΟΫϥυ NPCJMFCBDLFOE ‣χϑςΟ͕͍ͬͯΔN#BB4αʔϏε ‣௨শ/$.# ‣ࠃͰେखʹೖΔ ‣ઈࢍʮ1FSTFຽͷۦ͚ࠐΈࣉʯԽͯ͠Δ ‣ʮޚࣾ1BSTFͷΑ͏ʹ͍͖ͳΓαʔϏεଧͪ ͬͨΓ͠ͳ͍Ͱ͢ΑͶ ʯ
Կ͕Ͱ͖Δͷ ‣ձһཧɾೝূ ‣εϚϗͷϓογϡ௨ ‣σʔλετΞ ‣,74తͳͷ ‣ϑΝΠϧετΞ ‣ΦϒδΣΫτετϨʔδ ‣Ґஔใݕࡧ ‣/PEFϞδϡʔϧ࣮ߦ /FX
/$.#4%, ‣J04 0CKFDUJWF$ ‣"OESPJE +BWB ‣+BWB4DSJQU /PEF .POBDB
‣6OJUZ $
͏ͪͷݴޠͳ͍ΜͰ͚͢Ͳ ‣3&45"1*͕ެ։͞Ε͍ͯ·͢ɻ ‣ઌ΄Ͳͷ֤ݴޠ༻4%,ɺதͰ3&45"1* Λୟ͍͍ͯΔ͚ͩɻ ‣IUUQNCDMPVEOJGUZDPNEPDDVSSFOU SFTUDPNNPOGPSNBUIUNM
1)1·ͩͰ͔͢ ‣͍͢·ͤΜɺઈࢍ։ൃதͰ͢ɻ ‣/$.#ͷશػೳʹରԠ༧ఆ ‣1)1Ҏ߱ʹରԠ ‣͏TIPSUBSSBZTZOUBYͰ͍͍ΑͶ
༻ྫσʔλετΞͷอଘ <?php use Ncmb\NCMB; use Ncmb\Object; try { $appkey =
'xxxxxxxx'; $clientkey = 'yyyyyyyy'; NCMB::initialize($appkey, $clientkey); $className = 'myClass'; $object = new Object($className); $object->key1 = 'a'; $object->key2 = 'b'; $object->save(); } catch (Exception $e) { die($e->getMessage()); }
༻ྫσʔλετΞͷݕࡧ <?php use Ncmb\NCMB; use Ncmb\Query; try { $appkey =
'xxxxxxxx'; $clientkey = 'yyyyyyyy'; NCMB::initialize($appkey, $clientkey); $className = 'myClass'; $query = new Query($className); $query->equalTo('key1', 'a'); $results = $query->find(); var_dump(count($results)); // 1 } catch (Exception $e) { die($e->getMessage()); }
ྫ͑ͷ͍ॴ ‣ඇৗʹଟ͘ͷඇߏԽσʔλΛѻ͏ ‣%#αʔόͷ͓कΓͨ͘͠ͳ͍ ‣ඇৗʹଟ͘ͷϢʔβʔΞΧϯτΛѻ͏ ‣σʔλ୯ҐͰࡉ͔͘ΞΫηε੍ޚΛ͢Δ ‣େྔͷϓογϡ৴ΛԆͳ͘Γ͍ͨ
Ͱ͓ߴ͍ΜͰ͠ΐ͏ ‣͓ࢼ͠ແྉϓϥϯ͋Γ·͢ ‣"1*ϦΫΤετສճ݄ ‣ϓογϡ௨৴ສճ݄ ‣ετϨʔδΤϦΞ(# ‣εΫϦϓτ"1*ίʔϧճ݄ ‣͔ͦ͜Β্ສԁ݄ͷ&YQBSUϓϥϯ
·ͱΊ ‣N#BB4ϞόΠϧͷͨΊʮ͚ͩʯͷαʔϏε ͡Ό͋Γ·ͤΜ ‣͏·͘ར༻ͯ͠ඞཁͳ෦͚ͩΛ֎ग़͠Ͱ͖Δ ‣/$.#1)14%,·ͩ։ൃத ‣͏গ͠ػೳ࣮Ͱ͖ͨΒެ։͠·͢