Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
10年運用している 画像サービスでのJavaの活用と 今後の展望
Search
Naoki Morioka
November 24, 2016
Technology
630
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
10年運用している 画像サービスでのJavaの活用と 今後の展望
Naoki Morioka
November 24, 2016
More Decks by Naoki Morioka
See All by Naoki Morioka
Androidアプリ開発からみた RxJavaの使いどころ
nmorioka
1
4.1k
モバイルアプリでHTTP/2
nmorioka
1
140
既存AndroidアプリでKotlin導入を考える
nmorioka
0
130
Cardbord SDK
nmorioka
0
110
AndroidでJava8
nmorioka
0
330
Other Decks in Technology
See All in Technology
その Lambda、8分で 管理者権限まで奪われます
k1nakayama
6
2.9k
エージェントはローカル、検証はMicroVM — Lambda MicroVMsでつくるServerless CI
fujioka6789
2
160
OpenTelemetryのメトリクスをCloudWatchに送ってPromQLで見てみた
ota1022
0
150
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
200
Genieを崇めよ
kameitomohiro
0
160
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
360
負債のメタファと2026年 / Debt Metaphor in Agentic Engineering Age 202609 Edition
twada
PRO
9
3.9k
データ_AIの事業の勝敗をわけるもの
nek0128
1
420
Claude Codeを「使うほど育つ」AI秘書にするノウハウ
minorun365
PRO
31
26k
安心して変更できるWebフロントエンドの作り方
pirosikick
5
2.7k
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
2
940
銀行勘定系システムにおける開発プロセス刷新×AIによる環境モダナイゼーション / Development Process Transformation and AI-Driven Environment Modernization
muit
1
2.3k
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Git: the NoSQL Database
bkeepers
PRO
432
67k
GraphQLとの向き合い方2022年版
quramy
50
15k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
410
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
550
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Deep Space Network (abreviated)
tonyrice
0
310
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
580
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
450
Optimising Largest Contentful Paint
csswizardry
37
4k
Mobile First: as difficult as doing things right
swwweet
225
10k
Scaling GitHub
holman
464
140k
Transcript
ӡ༻͍ͯ͠Δ ը૾αʔϏεͰͷ+BWBͷ׆༻ͱ ࠓޙͷల ++6($$$'BMM /BPLJ.PSJPLB
ΤϯδχΞྺ $ͪΐͬͱɺ΄ͱΜͲ+BWB αʔόཧɺσʔλඋ ࠷ۙ"OEPSJEJ04ΞϓϦ։ൃ ੲۀͰέʔϓϖϯΪϯΛࣂ͍ͬͯͨ ͜ͱ͕͋Γ·͢ Ԭঘه !O@NPSJPLB "CPVU.F ϑϦϡʔגࣜձࣾۈژࡏॅ
ਓʑͷ͜͜ΖΛ๛͔Ͱͤʹ͢Δ ྑ࣭ͳΤϯλςΠϯϝϯτΛग़ ͢Δʂ ϑϦϡʔגࣜձࣾ ձࣾհ ϓϦػ γΣΞ/P ήʔϜࣄۀ ϓϥΠζࣄۀ
ϐΫτϦϯΫϑϦϡʔͷ ϓϦػͱ࿈ಈͨ͠ϓϦըऔಘ αʔϏε αʔϏεհ 8&#αΠτ ωΠςΟϒΞϓϦ
ϓϦϯτγʔϧػʹɺͯ͢ը૾సૹػೳ͕͍͍ͭͯ·͢ɻ γʔϧʹҹࣈ͞Ε͍ͯΔ̞%ૹΒΕͯ͘Δϝʔϧͷ̧̡̪ʹ ΞΫηε͢ΔͱϐΫτϦϯΫͰऔಘͰ͖·͢ɻ
None
ࠓ͢͜ͱ w +BWBͰ࡞ͬͨαʔϏε͕ͲΜͳมભΛḷ͔ͬͨ w ී௨ͷ։ൃऀͰటष͘αʔϏε֦େΛଓ͚͍ͯ͘͜ͱ͕ ग़དྷͨͱ͍͏ w ࠓϫΫϫΫ͠ͳ͕ΒऔΓΜͰ͍Δ͜ͱ
ࠓ͞ͳ͍͜ͱ w ΞϓϦɾϑϩϯτΤϯυܥͷ
݁ ͋ͱ͘Β͍ +BWB+7.ͰؤுΕͦ͏Ͱ͢ʂ
ΞδΣϯμ w ӡ༻͍ͯ͠ΔαʔϏεͷมભ w εϚʔτϑΥϯରԠͷিܸ w ࠓऔΓΜͰ͍Δ͜ͱͱࠓޙͷల w ·ͱΊ
w ϑϦϡʔݩʑݚڀॴൃ w ܞଳ+BWB͚ࢄ11ϛυϧΣΞΛ։ൃ w ,%%*ʹࡌ͞ΕΔ w ར༻࣮ͮ͘ΓͷͨΊΤϯλςΠϯϝϯτɾίϯςϯπ࡞ Կނ+BWBΛબͨ͠ͷ͔ʁ +VNPOϓϩδΣΫτ
IUUQXXXJUNFEJBDPKQNPCJMFLKBWBIUNM
ձһ ສਓ ϖʔδϏϡʔ ສ17.POUI ։ൃऀ ໊νʔϜ ϐΫτϦϯΫαʔϏεॳظ
τϐοΫ ΦϨΦϨϑϨʔϜϫʔΫ ։ൃڥςΩετΤσΟλʴKBWBDίϚϯυ
8FC ϓϦᝑମ ϑΟʔνϟʔϑΥϯ αʔϏεॳظߏ ը૾ొ ϑΝΠϧ %# 8FCΞϓϦέʔγϣϯ +4& 5PNDBU
αʔό %# 0SBDMFJ αʔό ϑΝΠϧαʔό -JOVYαʔό αʔό )551)5.- ը૾Ξοϓϩʔυ
ձһ ສਓ ϖʔδϏϡʔ ສ17.POUI ։ൃऀ ໊νʔϜ ϐΫτϦϯΫαʔϏεظ
τϐοΫ 4FBTBSͷར༻։࢝ ձһɾΞΫηε͕૿͑ͯෛՙରࡦ
8FC ϓϦᝑମ ϑΟʔνϟʔϑΥϯ ը૾ొ ϑΝΠϧ %# )551)5.- ը૾Ξοϓϩʔυ 8FCΞϓϦέʔγϣϯαʔό +4&
5PNDBU 4FBTBS αʔό σʔλϕʔεαʔό 0SBDMFJ ΫϥελϦϯά αʔό ϑΝΠϧαʔό /FU"QQ'"4 αʔό αʔϏεظߏ
ֶΜͩ͜ͱ w +7.؆୯ͳϝϞϦௐͰ͔ͳΓͷߴෛՙʹ͑ΒΕΔ 9NY 1FSN(FO w όοΫΤϯυαʔόʹۚΛ͔͚ΕͳΜͱ͔ͳΔ͕ௐࠪɾ ݕূ͕େࣄ εϓϦοτϒϨΠϯͰσʔλ͕ਧͬඈͿ ࠷৽ϑΝΠϧαʔόೲ͞Εͳ͍
ϥΠϒϥϦҰཡ ϑΟʔνϟʔϑΥϯͰ͕ͬͭΓ+BWB w ϓϦػͰࡱӨͨ͠ը૾ΛͳΔ͘ΩϨΠʹಧ͚Δ w ϑΟʔνϟʔϑΥϯ'MBTI͚ಈతม w ܞଳ͚)5.-ϝʔϧ DPSF BVUI
QBZNFOU PQFOTPDJBM NBJM USBOTGFS DFSBUPS JNBHF TXG PLBP VSBOBJ EFDPNBJM SFDPNNFOE
ը࣭ͷͩ͜ΘΓ ֦େCJDVCJD๏ ॖখCJMJOFBS๏ ҎԼͷॖখ໘ੵฏۉ๏
import java.awt.Toolkit; import java.awt.image.AreaAveragingScaleFilter; import java.awt.image.BufferedImage; import java.awt.image.FilteredImageSource; import java.awt.image.ImageFilter;
BufferedImage tempImage = .. ImageFilter filter = new AreaAveragingScaleFilter(scaleSize.getWidth(), scaleSize.getHeight()); FilteredImageSource fis = new FilteredImageSource(tempImage.getSource(), filter); Image filteredImage = Toolkit.getDefaultToolkit().createImage(fis); ໘ੵฏۉ๏αϯϓϧ
ձһ ສਓ ϖʔδϏϡʔ ສ17.POUI ։ൃऀ ໊νʔϜ ϐΫτϦϯΫαʔϏεགྷΓظ
τϐοΫ ձһͷ৳ͼ͕಄ଧͪ πΪϋΪͰ࡞͖ͬͯͨαʔϏεͷݶքײ ͔͚ۚͳ͍ํ๏ͷࡧΛ͍ͨ͠
େ͖ͳվमҊ 4/4ػೳ ग़ͯདྷͯ શ໘ϦχϡʔΞϧΛܾҙ
ϦχϡʔΞϧݴޠΛม͑Δʁ w ϦχϡʔΞϧʹ͋ͨͬͯϝΠϯͷ։ൃݴޠΛ4DBMBʹ͢Δ͔ ͱ͍͏͕ٞר͖ى͜Δ w 4DBMB1SPT ॊೈͳݴޠදݱɺڧྗͳϦετૢ࡞ɾύλʔϯϚονͳͲ +7.ʹΑΔϋΠύϑΥʔϚϯε +BWBͷࢿ࢈͑Δ ઑͬͨ։ൃऀʹ͞ΔͷͰͳ͍͔ͱ͍͏ظ
ຊʹΔͷʁ w 4DBMB$POT ࣌ 8FCϑϨʔϜϫʔΫͷܾఆଧ͕ແ͍ 1MBZܥ-JGU ίϯύΠϧʹ͕͔͔࣌ؒΓ*%&ͷରԠශऑͰ͋ͬͨ طଘ։ൃऀͷֶशίετ
w 4FBTBSίʔυɾϥΠϒϥϦΛྲྀ༻͠ͳ͍ͱ͕͔͔Δ w ৽نࣄۀͷབྷΈͰਓࡐΛকདྷతʹ֬อग़དྷͳ͍Մೳੑ
͜͜ͰकΓʹೖͬͯ +BWBΛબ
ϦχϡʔΞϧߏ ϑΝΠϧ ըొ%# ΦϒδΣΫτετϨʔδ %# %# 8FCΞϓϦέʔγϣϯ +BWB4& 5PNDBU 4FBTBS
αʔό̒ ը૾ొ%# %# 0SBDMFH αʔό %# .Z42- 4QJEFS αʔό ΦϒδΣΫτετϨʔδ .PHJMF'4 αʔό ϓϦᝑମ ϑΟʔνϟʔϑΥϯ ը૾ొ 8&# )551)5.- ը૾Ξοϓϩʔυ
ֶΜͩ͜ͱ w ΞʔΩςΫνϟͷ౷ҰΛͯ͠+BWBͰεϐʔυײΛ࣋ͬͯ։ ൃͰ͖ͨ 44USVUT4%BP47FMPDJUZ w վमͨ͠ΠϯϑϥɾϛυϧΣΞ҆ఆಈ࡞ͤ͞Δͷʹ࣌ؒ ͕͔͔Δ ϓϨΦʔϓϯɺЌςετͳͲ࣮ࢪ͢Εྑ͔ͬͨ ԯը૾ଟ͔ͬͨʜ
w શ෦ॻ͖͑Δ௧Έ૬ͷͷͰ͋ΓԿճग़དྷͳ͍
ΞδΣϯμ w ӡ༻͍ͯ͠ΔαʔϏεͷมભ w εϚʔτϑΥϯରԠͷিܸ w ࠓऔΓΜͰ͍Δ͜ͱͱࠓޙͷల w ·ͱΊ
ϑΟʔνϟʔϑΥϯ͔Β εϚʔτϑΥϯ
)5.- $44 +BWB4DSJQU ωΠςΟϒΞϓϦ J04"OESPJE ௨৴ΩϟϦΞಠࣗ)5.- 'MBTI ௨৴ΩϟϦΞಠࣗೝূ 0"VUIͳͲΦʔϓϯͳೝূ ࢀೖোนߴ͍
ຊಠ༷ࣗ ୭ͰαʔϏεߏஙՄೳ ੈքڞ௨༷ εϚʔτϑΥϯγϑτ
εϐʔυײɺڝ૪ྗ͕ͳ͍ͱ ਰୀ͢Δͱ͍͏ةػײ
Ͳ͏͢Ε εϐʔυΛͬͱग़ͤΔͷ͔ʁ
·ͣʮͬͯΈΔʯ
w ΞδϟΠϧϓϩηεಋೖͰഓͬͨจԽ ࡉ͔͍վળͷੵΈॏͶ Ϣχοτςετɾ݁߹ςετΛ͔ͬ͠Γ࣮ࢪ w ߴෛՙରԠʹؾΛΘͳͯ͘ྑ͍ͷڌΓॴ +7.ͷύϑΥʔϚϯε ΠϯϑϥɾαʔϏεӡ༻ज़ ͬͯΈ͍ͯαΠΫϧͰվળΛॏͶΔ
w ར༻։ൃݴޠͷߜΓࠐΈ εΫϦϓτهड़ 1FSM3VCZˠ(SPPWZ ӡ༻πʔϧ 4DBMB3P3ˠ+BWB +BWB4DSJQU͕৽ͨʹඞਢʹͳΔͷͰઐ೦͢Δ w
ίΞͳΞʔΩςΫνϟͱΓ͋͑ͣखΛ͚ͭͳ͍ɻ4FBTBS ߋ৽͞Εͳͯ͘ؾʹͳΔ͚ͲઌૹΓ w ͨͩ͠ݴޠ࣮ߦڥͷ࠷৽Խదٓߦ͏ αʔϏε։ൃʹूத͢Δ
w ͦΕ·ͰνʔϜͩͬͨ։ൃΛదʹׂɾՃ͢Δ ৫Λ࠷దԽ͢Δ αΠτ։ൃνʔϜ "1* ΠϯϑϥνʔϜ σʔλղੳνʔϜ ωΠςΟϒΞϓϦ ։ൃνʔϜ ׂ
Ճ ɾɾɾ ΞϓϦ։ൃνʔϜ
݁Ռ૿͍͑ͯͬͨͷ ωΠςΟϒΞϓϦ J04"OESPJE εϚϑΥαΠτ՝ۚ "1*αʔό ೝূαʔό ը૾৴αʔό εϚϑΥαΠτ
·ͩ·ͩΔ
w શϦϙδτϦΛ47/͔Β(JU)VCͷҠߦ w HJUqPXͱ1VMM3FRVFTUʹΑΔෳਓͰͷεϜʔζͳ։ൃ ։ൃϑϩʔΛݟ̍͢
HJUqPX ϒϥϯνઓུ %FWFMPQϒϥϯνͷϚʔδˠ1VMM3FRVFTUϨϏϡʔ IUUQTSVBUMBTTJBODPNKBHJUXPSLqPXTXPSLqPXHJUqPX
w σΠϦʔϏϧυɾςετͷపఈ w νϟοτ 4MBDL ͷಋೖʹΑΔνʔϜঢ়گͷϦΞϧλΠϜ Ѳ ։ൃϑϩʔΛݟ̎͢
اը ։ൃ Πϯϑϥ 4MBDLΛϓϩδΣΫτμογϡϘʔυͱͯ͠ ։ൃͷঢ়گѲվળΛਐΊΔ ঢ়گѲ
݁Ռ૿͍͑ͯͬͨͷ̎ ωΠςΟϒΞϓϦ J04"OESPJE εϚϑΥαΠτ՝ۚ "1*αʔό ೝূαʔό ը૾৴αʔό εϚϑΥαΠτ ΞϓϦ՝ۚ Ϋϥυͷ
෦తར༻ σʔλूܭγεςϜ 64ରԠ "#ςετγεςϜ ϙΠϯταΠτ
4 ϓϦᝑମ 3%4 ΦϒδΣΫτετϨʔδ %# %# εϚʔτϑΥϯϒϥβ ը૾ొ 8FC 8FC
ೝূ "1* ը૾ 64 "84 +1 "84 ΦϯϓϨ 4 3FETIJGU 64ϓϦᝑମ &5- εϚʔτϑΥϯରԠߏ ൈਮ ը૾ొ ϑΝΠϧ εϚʔτϑΥϯΞϓϦ DBDIF
εϚʔτϑΥϯରԠߏ ൈਮ '1418FC +BWB4& 5PNDBU 4FBTBS αʔό "1*"VUI*NBHF +BWB4& 5PNDBU
4FBTBS αʔό σʔλϕʔε 0SBDMFH 4&3"$ αʔό
αʔϏε͕૿͖͑ͯͯग़ͯདྷΔ w ϩάऩूͷ αʔό͕ଟ֬͘ೝ͠ʹ͍͘ w όονॲཧͷ ͲͷαʔόͰԿ͕͍ͭಈ͍͍ͯΔͷ͔ͷཧग़དྷͳ͍
w +BWBδϣϒεέδϡʔϥ w 8FCίϯιʔϧͰཧ w શόονΛॲཧத
ӡ༻ߏ ΠϯϑϥνʔϜ اըνʔϜ ։ൃνʔϜ σʔλղੳνʔϜ ຊ൪ڥ EFQMPZ όονॲཧ ࢹ
ֶΜͩ͜ͱ w ࡉ͔͍վળͷੵΈॏͶ͕େ͖ͳޮՌΛग़͍ͯ͘͠ w ࣄۀͷ͕࣮ײग़དྷΔͱ։ൃ͕·ָͨ͘͠ͳ͖ͬͯͨ
ΞδΣϯμ w ӡ༻͍ͯ͠ΔαʔϏεͷมભ w εϚʔτϑΥϯରԠͷিܸ w ࠓऔΓΜͰ͍Δ͜ͱͱࠓޙͷల w ·ͱΊ
͜Ε͔ΒΔ͖͜ͱ w ΫϥυͷҠߦ ϓϦػͱͷଓωοτϫʔΫσʔλอޢͷ w ར༻ϑϨʔϜϫʔΫͷݶք 4FBTBS 4FBTBSͰ࡞ͬͨԶͨͪͷαʔϏεͷࠓ IUUQXXXTMJEFTIBSFOFUKZVLVUZPTFBTBS
4QSJOHϕʔεҠߦΛਐΊΔ w ڞ༗ͷίϯϙʔωϯτΛഉআ
νʔϜਤ ͓͞Β͍ αΠτ։ൃνʔϜ "1* ΠϯϑϥνʔϜ σʔλղੳνʔϜ ωΠςΟϒΞϓϦ ΞϓϦ։ൃνʔϜ
ڞ௨ͷίϯϙʔωϯτ %# Πϯϑϥ DPSFKBS ڞ௨ϥΠϒϥϦ '18FC 418FC "1* %# .PHJMF'4
NFNDBDIFE "VUI *NBHF Τοδ αΠτ "1*
ڞ௨ՕॴΛෳνʔϜͰ৮Δ w ҙਤ͠ͳ͍ػೳ͕ϦϦʔε͞ΕΔةݥੑ HJUqPXͰͷཷ·ͬͨGFBUVSFͷϦϦʔε࣌ ςʔϒϧߏมߋ࡞ۀ͕ඞཁͳͷ͕ൈ͚Δͱ·͍ͣ ֬ೝ࡞ۀʹखΛऔΒΕΔ w ݁߹ςετ࣮ࢪճͷ૿Ճ w ։ൃνʔϜ͕૿͠ʹ͍͘
νʔϜɺνʔϜͱͳͬͨ߹͞Βʹίετ͕ߴ͘ͳΓͦ͏
มߋͷํˠআʑʹׂ DPSFKBS Өڹখ DPSFKBS Өڹখ Өڹখ Өڹத Өڹେ Өڹେ DPSFKBS
w ํੑͱͯ͠զʑͷࢦ͢ͷͬΆ͍ ৫্ͷ੍ݶΛऔΓ͏ͨΊͷબࢶ ϨΨγʔίʔυΛϦΞʔΩςΫτ͢ΔͨΊͷબࢶ w ͨͩ͠ஈ֊Λ౿ΜͰ࣮ࢪͨ͠ํ͕ྑͦ͞͏ ϚΠΫϩαʔϏεΞʔΩςΫνϟ
αʔϏεׂ ஈ֊తʹ %# Πϯϑϥ ڞ௨ 418FC "1* .PHJMF'4 NFNDBDIFE "VUI
*NBHF Τοδ 4FSWJDF DPSFKBS
αʔϏεׂ ஈ֊తʹ ڞ௨ 418FC "1* "VUI *NBHF Τοδ 4FSWJDF DPSFKBS
%# Πϯϑϥ .PHJMF'4 NFNDBDIFE /FX %#
ୈҰาΛ౿Έग़ͯ͠Έͨ w εϚʔτϑΥϯΞϓϦ͚ϓογϡ௨ॲཧͷׂ w ΞϓϦͰͷར༻ͷΈͳͷͰӨڹ͕খׂ͍͘͢͞͠ίϯ ϙʔωϯτ w ඇಉظͰॲཧՄೳͳͨΊࢄγεςϜతʹߟྀ͢Δ͜ͱ গͳ͍
"1* DPSFKBS ͱͱͷϓογϡ௨αʔϏε 1VTI/PUJpDBUJPO "1/T ($.'$. )5514 ϓογϡ௨ ᶃ ᶄ
ᶅ
"1* DPSFKBS ϓογϡ௨αʔϏεͷվमҊ 1VTI/PUJpDBUJPO 4FSWJDF "1/T ($.'$. )5514 ϓογϡ௨ ΠϕϯτΩϡʔ
ᶃ ᶄ ᶅ ᶆ
࣮ݱʹ 4QSJOHΛ͓͏
4QSJOH$MPVE4USFBN IUUQTCMPHJLBN
ϓογϡ௨େྔʹ৴͞ΕΔ ͜ͱΛߟ͑Δͱ ,BGLBΛ#JOEFSʹͯ͠ΈΔ
,BGLB 4JOLઃఆҙ w (SPVQ TQSJOHDMPVETUSFBNCJOEJOHTJOQVUHSPVQ ͷઃ ఆ͕ͳ͍ͱશ4JOL͕Ԡ͢Δ w 4JOL࠶ىಈ࣌ʹաڈॲཧϝοηʔδΛ࠶औಘ͢Δ TQSJOHDMPVETUSFBNLBGLBCJOEJOHT\EFTUJOBUJPO^DPOT
VNFSTUBSU0⒎TFUMBUFTUΛઃఆ͢Δͱ࠶औಘ͠ͳ͍ ,BGLB 4JOL 4JOL
w ΫϥελϦϯάߏࢼݧ w ҟৗܥಈ࡞ɺ෮ؼࢼݧ w ࠶ىಈࢼݧ γεςϜςετ͔ͬ͠Γ࣮ࢪʂ
4QSJOH#PPUͷྑ͞ w গͳ͍ίʔυྔͰෳࡶͳॲཧΛ࣮ݱͰ͖Δ w ๛ͳؔ࿈ϥΠϒϥϦ܈ʂ w ఆظతʹϓογϡΛ৴͢Δαʔό؆୯ʹߏங 4DIFEVMJOH5BTLTΛར༻ͨ͠
@EnableAutoConfiguration @EnableScheduling public class NotificationApplication { @Autowired Source source;
@Scheduled(cron = "0 0,10,20,30,40,50 * * * *", zone = "Asia/Tokyo") public void execute() throws InterruptedException { // find push message entry // … // send message source.output().send(MessageBuilder.withPayload(message).build()); return; } public static void main(String[] args) { SpringApplication.run(NotificationApplication.class, args); } } 4DIFEVMJOH5BTLT
"1* DPSFKBS վमޙͷϓογϡ௨αʔϏε "1/T ($.'$. )5514 ϓογϡ௨ ,BGLB )551 /PUJpDBUJPO
4FSWJDF 4QSJOH#PPU 1VTI/PUJpDBUJPO 4JOL 4QSJOH#PPU ఆظϓογϡ ૹ৴πʔϧ 4QSJOH#PPU
"1* DPSFKBS վमޙͷϓογϡ௨αʔϏε "1/T ($.'$. )5514 ϓογϡ௨ ,BGLB )551 /PUJpDBUJPO
4FSWJDF 4QSJOH#PPU 1VTI/PUJpDBUJPO 4JOL 4QSJOH#PPU ఆظϓογϡ ૹ৴πʔϧ 4QSJOH#PPU ઈࢍࣄத
ఆظϓογϡ௨৴ͷํ ຖඦສ௨ॲཧ͍ͯͯ͠ ҆ఆͯ͠·͢Αʂ
ࡶײɿಘҙΛ͚ͯΈͯ w ,BGLBͷΑ͏ͳෳࡶͳฒྻॲཧഉଞ੍ޚͳͲΛѻ͏ϑϨʔ ϜϫʔΫ෦Λ4DBMBͰॻ͘ w ϑϨʔϜϫʔΫར༻ʹ͍ͭͯ+BWBΠϯλʔϑΣʔεΛ༻ҙ ͯ͠ށΛେ͖͘։͍͓ͯ͘ w ࠷ۙͰ-BHPN 4DBMBϚΠΫϩαʔϏεϑϨʔϜϫʔΫ
ͦͷΑ͏ͳྲྀΕʁ
ֶΜͩ͜ͱ w ੩తݴޠͱڧྗͳ*%&ͰαʔϏεׂḿΔ w +BWBͰग़དྷΔ͜ͱΛྑ͘Βͳ͔ͬͨ 4QSJOH$MPVE/FUqJYͳͲͰ͍͢͝πʔϧ͕നԡ͠ +BWBྑ͍Ͱ͢Ͷʂָ͍͠ʂ w ͬͱׂΛਐΊ͍ͯͬͯྑͦ͞͏ͩ
ΞδΣϯμ w ӡ༻͍ͯ͠ΔαʔϏεͷมભ w εϚʔτϑΥϯରԠͷিܸ w ࠓऔΓΜͰ͍Δ͜ͱͱࠓޙͷల w ·ͱΊ
$PODMVTJPO w ࣄۀڥʹ߹Θͤͯటष͋͘Δ͕αʔϏεΛ֦େग़དྷͨ w େ͖ͳίʔυϕʔε৫ʹӨڹ͢Δෛ࠴ʹͳΓ͑Δ w ৫Λॊೈʹ͠Α͏ͱ͢ΔͱࣗવͱϚΠΫϩαʔϏεΞʔΩ ςΫνϟʹ͔͍ͬͯ͘ͱײ͡Δ w +BWB+7.ͷ҆ఆੑ࠷ߴͩ
ࠓ +BWB4QSJOH$MPVE ͳͲͷΩʔϫʔυʹϫΫϫΫ
ઌͷվળΛଓ͚͍ͯ͘ͱ ͞Βʹ̍̌ܦͬͯ·ͨ͠ͱ ͳ͍ͬͯΔؾ͕͢Δ
࠷ޙʹ ϑϦϡʔͰҰॹʹಇ͍ͯ ͘ΕΔΤϯδχΞΛืूதʂ IUUQXXXTBJZPGVSZVKQJOEFYIUNM