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
[Home NOC Operators' Group] User Dashboardを作ってみた話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
yoneyan
August 14, 2021
Programming
370
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[Home NOC Operators' Group] User Dashboardを作ってみた話
e-ZUKA Tech Night vol.52 -コロナ禍を支えるITインフラ-
発表資料
yoneyan
August 14, 2021
More Decks by yoneyan
See All by yoneyan
20250830_本社にみんなの公園を作ってみた
yoneyan
0
230
NREに向けた取り組みと さくらのサービス別通信状況(β)について / about NRE and sakura service network status beta
yoneyan
0
72
IPアドレス管理指定事業者における業務自動化の取り組みと活用例
yoneyan
0
120
Other Decks in Programming
See All in Programming
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
3
1.3k
JIS keyboard support in Omarchy
lef237
0
180
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
Vue.jsで作る空間解析アプリとCapacitorプラグインのData Bridge
hal_spidernight
1
140
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
240
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
300
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
530
Coding with AI: How to trust the storyteller (AWS Community Day Adria, Ljubljana 2026)
slobodan
0
130
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
2.3k
動画プレイヤーはなぜカクつくのか 〜Flutterのレンダリングとネイティブの境界を解剖する〜
naruogram
0
320
AmebaブログはKMPから卒業します
kmars0605
0
310
Groovy as a human and AI friendly programming language
paulk
0
160
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.3k
Optimizing for Happiness
mojombo
378
71k
How to Ace a Technical Interview
jacobian
280
24k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
2
990
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
500
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
350
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
620
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
First, design no harm
axbom
PRO
2
1.4k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Transcript
User Dashboardを作っ てみた話 Yuto Yoneda 8/12 e-ZUKA Tech Night
自己紹介 米田 悠人 • 大阪 • 大阪工業大学 情報科学部 情報ネットワーク学科 4年
• 最近の趣味はインフラ歩きやNTTと電電公社の社歌を聴くこと GitHub: https://github.com/yoneyan Twitter: https://twitter.com/yoneyan_ja
ユーザのみなさんとのやり取り(一年前) メールOnly。。。。
例)
わからん。。。
メールのメリット • 対応人数が少ない場合は、割と楽 • 誰でも使える
メールのデメリット • 運営委員の負担がかなり高い ◦ 運営委員が忙しく、いつの間にか忘れてしまう ◦ スパムメールが大量に受信されるため、埋もれる ◦ netboxや内部Wiki、Configから情報を読み取る必要があり、ユーザの識別に時間が非常にかかる •
他の運営委員と内容の共有が難しい
2020/03 後半頃~ ユーザ管理システムを作ってみよう
2020/04 ~ 言語選定 • Angular(Firebase関連を少しだけ触ってみたかったから ) Firebase + Angularで作ってみようとなった
2020/04 緊急事態宣言中~ HomeNOC operators’ Groupでは関係のないアプリケーション開発をしまくる • vmmgr • シフト表ぽいもの
2020/04 緊急事態宣言中~ HomeNOC operators’ Groupでは関係のないアプリケーション開発をしまくる • vmmgr • シフト表ぽいもの
2020/05 ~ • 開発スタート
v1.0 Release 2020/07/06
None
None
仕組み 使用技術 • Firestore Database • Authentication • Functions
Firebase Functions
問題点 • 従量課金制になる ◦ 内側から外側への通信にはお金がかかる • オンプレにしたいという意見が多い+したかった • チャット機能自体がなく、ユーザとのやり取りは結局メールになる •
HomeNOCの本来のサービスコードでは対応できないことが判明
バグなどの多さも課題。。。 • 入力に対するチェック機能が実装しきれていなかった • 単純に管理者が使いづらい
v2.x 2020/11 密かにリリース
サービスコードを一新(これまで) Static BGPによるEther IP接続の場合、3SE2020001 • グループ毎に割り当てられる ◦ グループIDがService Code •
拡張不可 • 複数拠点で異なる接続方法で結ぶとサービスコードが不一致になる
サービスコードを一新(現在) GroupID: 1でStatic BGPによるEther IP接続の場合、1-3S00001-EIP001 Groupのみ定義: 1 サービス情報のみ定義: 1-3S00001 接続も含めた定義:
1-3S00001-EIP001 • サービス品目の複数対応 • 接続品目の複数対応
特徴 • バックエンドを内製化 ◦ 従量課金ではなくなった • グループの概念を実装 • チャット機能の実装 •
サービスコードの大幅な変更
構成
DB構造
問題点 エラー内容がようわからん
v3.xは2021/05 こっそりリリース UIの変更はまったくないため省略
変更点 • ログ取得の実装(ログインユーザなどがわかるようにする) • 個人情報扱いの変更による大幅な DBの変更 • いらないTableは修正、削除を実施する • Production用のDBを生で触らなくてもいいように
dwebadmを充実させる(時間はかなりかか る) • DBアクセス頻度を減らす
問題点 • WebフレームワークとしてAngularを使っていたが扱える人が少ない • ユーザ側のサーバに不要な APIが存在していた • gorm(O/Rマッパー)のライブラリがv1だった(最新はv2)
v4.x Release (latest)
None
None
変更点 • WebフレームワークをAngularからReactに変更 • サポートチャットにてMarkdownが使用可能 • ユーザ単位でもチャットできるように変更 • ユーザ、グループ、サービス情報、接続情報の各追加ページにて文字数制限やチェック機能の強化を実施 •
不必要なAPIを削除し、よりセキュアにした • 不要なレスポンスを削り、セキュリティの強化 • 各リストにて、検索機能の追加 • ユーザページにてサーバアクセスの頻度を少なくした • UIの大幅改修 • TokenデータをSessionStorageからCookieに変更 • 申請手続きページの改修 • 通知機能の改修 • 寄付の仕組みを追加 • 会費徴収の仕組みを追加 • タグ機能の追加
DB構造 •
チャットの仕組み
実は。。。
チャットが届くまで
チャットが届くまで その1
チャットが届くまで その2
チャットが届くまで その3
バグ報告はgithubから https://github.com/homenoc
バグ報告
これからも、User First ....