並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1713件

新着順 人気順

snapshotの検索結果1 - 40 件 / 1713件

  • 決済システムの残高管理周りの DB 設計と戦略 - カンムテックブログ

    エンジニアの佐野です。今日はカンムの決済システムでユーザの残高管理をどうやっているかについて書きます。 カンムの製品であるバンドルカードはプリペイド方式のカードです。ユーザによる入金、店舗での利用、運営事由の操作などによりユーザの残高が増減します。このような残高の管理について単純に考えると user_id と balance と updated_at あたりをもったテーブルを用意して balance と updated_at を更新していく方法があるかもしれません。しかしながらカンムでは残高を管理するテーブルを持たず、これらイベントの履歴のみで残高を管理しています。以下、本記事ではこれらユーザの残高が増減するイベントのことをトランザクションと呼びます。ここでは DB の Transaction Processing を意味しません。 本記事のポイントは 残高を管理をするテーブルは作らず、ト

      決済システムの残高管理周りの DB 設計と戦略 - カンムテックブログ
    • 【2020年】AWS全サービスまとめ | DevelopersIO

      このエントリは、2018年、2019年に公開したAWS全サービスまとめの2020年版です。これまではいくつかに分割して公開していましたが、1エントリにまとめてほしいという要望をもらっていたため、今年は1エントリに集約してみました。 こんにちは。サービスグループの武田です。 このエントリは、2018年、2019年に公開した AWS全サービスまとめの2020年版 です。これまではいくつかに分割して公開していましたが、1エントリにまとめてほしいという要望をもらっていたため、今年は1エントリに集約してみました。どちらがいいのか正直わからないので、フィードバックなどあれば参考にさせていただきます。 2020-01-08 リクエストがあったためAmazon Mechanical Turkを追加。 2018年まとめ 【2018年】AWS全サービスまとめ その1(コンピューティング、ストレージ、データベー

        【2020年】AWS全サービスまとめ | DevelopersIO
      • もう初回コードレビューはAIに任せる時代になった - CodeRabbit -

        どんな人向けの記事? レビューによって心理的なダメージを受けやすい方 非エンジニアだが、エンジニアチームがどんな機能を作っているか知りたい方 業務が溜まっていて、レビューに割く時間を捻出するのに苦労している方 コピペできるコードも公開します 初回レビューをAIに任せると、いろんなロールの人の役に立つ レビューは得意ですか? 優秀なエンジニアしかいないチームであれば、PRは1トピックに絞って小さく明確なコミットによって作成され、適切な要約とともに提供されることでしょう。 しかし、実際にはいろいろな制約から、PRが想定よりずっと大きくなってしまったり、関連トピックと異なるコードが混じってしまうこともあります。 実際のところ、大きなPRを適切にレビューするのは難しいことです。また、自分が詳しくない領域のレビューを行わなければいけない機会もあります。 今回の記事は、レビューを作成してくれるAI C

          もう初回コードレビューはAIに任せる時代になった - CodeRabbit -
        • 新入社員のみんな、「ChatGPT×Python」で鬼にならないか?|ピーナッツ

          ChatGPTが本当にヤバい。 断言する。新卒がこれを使いこなせば、今職場で「優秀」とされている5-6年目くらいの先輩なら余裕で出し抜ける。鬼になれる。 筆者はメーカー社員なので、メーカーの新入社員がChatGPTを使って鬼になる方法を1つ提案したい。 「ChatGPT×Python」である。 Pythonとは、ご存知のとおり物理シュミレーションからデータサイエンス、機械学習までカバーする汎用性をそなえたプログラミング言語だ。何でもできるわりには書ける人がなぜか少なく、いまだにスキルとして重宝されている。 そんなPythonにChatGPTを使おう。 ChatGPTを使えば、上司から求められるアウトプットを一瞬で出すことができる。それに対してフィードバックをもらい、それも一瞬で打ち返すことができる。 「あいつ"Python書ける"だけじゃないんだよな。こっちが言ったこと正確に理解するし、そ

            新入社員のみんな、「ChatGPT×Python」で鬼にならないか?|ピーナッツ
          • リレーショナルデータベースシステムを趣味で開発している者です。 現在、開発中のシステムを並行トランザクションへ対応させることを検討しており、どのような手法があるのか調べたところ、SS2PLもしくはS2PLという手法が私と同じように自作をされている方々の中では多く採用されているようだと分かりました。 一方で、PostgreSQLやMySQLなどのプロダクションレベルで利用されているシステムではMVCCと呼ばれる手法が採用されているということも分かりました。 きっと後者の方が多くの場合で高いスループットが得ら

            リレーショナルデータベースシステムを趣味で開発している者です。 現在、開発中のシステムを並行トランザクションへ対応させることを検討しており、どのような手法があるのか調べたところ、SS2PLもしくはS2PLという手法が私と同じように自作をされている方々の中では多く採用されているようだと分かりました。 一方で、PostgreSQLやMySQLなどのプロダクションレベルで利用されているシステムではMVCCと呼ばれる手法が採用されているということも分かりました。 きっと後者の方が多くの場合で高いスループットが得られるということなのだと思うので、可能であればMVCCを採用したいのですが、あまり初学者向けの実装例も見当たらず、どうしたものかと悩んでおります。 SS2PL/S2PLとMVCCの実装の難易度・工数はどの程度違うものなのでしょうか? また、初めてリレーショナルデータベースシステムを開発する者

              リレーショナルデータベースシステムを趣味で開発している者です。 現在、開発中のシステムを並行トランザクションへ対応させることを検討しており、どのような手法があるのか調べたところ、SS2PLもしくはS2PLという手法が私と同じように自作をされている方々の中では多く採用されているようだと分かりました。 一方で、PostgreSQLやMySQLなどのプロダクションレベルで利用されているシステムではMVCCと呼ばれる手法が採用されているということも分かりました。 きっと後者の方が多くの場合で高いスループットが得ら
            • DBMSをGoで実装してみた - Sansan Tech Blog

              こんにちは。プロダクト開発部の荒川 id:ad-sho-loko です。突然ですが、皆さんはこんな疑問を持ったことはありませんか? データベースの内部実装はどうなっているのか? トランザクションとはどのようなアルゴリズムで実現されているのか? NoSQLが遅いのはなぜか? 古典的なデータベースとは内部的にどのように違うの? データベースを何かしらの形で利用しているのにも関わらず、意外と内部の仕組みを理解していない場合が多いかと思います。僕もそうです。*1 しかし、エンジニアたるもの、その仕組みを知ることは非常に重要です。僕もデータベースについて勉強しようといくつかの本やサイトを調べていたのですが、なかでもCMU(カーネギーメロン大学)のDatabase System Groupがアップロードしている講義が最も勉強になりました。 www.youtube.com そして本ブログでは、上記の講義

                DBMSをGoで実装してみた - Sansan Tech Blog
              • Summary of the Amazon EC2 Issues in the Asia Pacific (Tokyo) Region (AP-NORTHEAST-1)

                2019年8月28日(日本時間)更新: 最初の事象概要で言及した通り、今回のイベントは、東京リージョンの1つのアベイラビリティゾーン(AZ)の一部に影響を与えました。この影響は当該 AZ の Amazon EC2 および Amazon EBS のリソースに対するものですが、基盤としている EC2 インスタンスが影響を受けた場合には、当該 AZ の他のサービス(RDS、 Redshift、 ElastiCache および Workspaces 等)にも影響がありました。お客様と今回のイベントの調査をさらに進めたところ、 個別のケースのいくつかで、複数のアベイラビリティゾーンで稼働していたお客様のアプリケーションにも、予期せぬ影響(例えば、 Application Load Balancer を AWS Web Application Firewall やスティッキーセッションと組み合わせてご

                  Summary of the Amazon EC2 Issues in the Asia Pacific (Tokyo) Region (AP-NORTHEAST-1)
                • [2020年版]最強のAWS環境セキュリティチェック方法を考えてみた[初心者から上級者まで活用できる] | DevelopersIO

                  「AWS環境のセキュリティが不安だ…」そんな方にはセキュリティチェック!AWSでは定量的にチェックすることができる機能があります。いくつかあるので長短などを説明しつつ私が思う最強のセキュリティチェックを伝授します! こんにちは、臼田です。 みなさん、AWS環境のセキュリティチェックしてますか?(挨拶 全国のAWSのセキュリティについて悩んでいるみなさまのために、今回は僕の考える最強のAWS環境セキュリティチェックについて情報をまとめ・伝授します。 初心者向けに、比較的AWSの経験が浅くても始めやすいように、かつ上級者が応用するために活用できる情報もぜんぶまとめていきます。 この記事は2020年の決定版となるでしょう!(それ いいすぎ。 ながーくなってしまったので最初は適宜飛ばして読むといいかもしれません。 AWS環境のセキュリティチェックの意義 AWS環境でセキュリティチェックをすることは

                    [2020年版]最強のAWS環境セキュリティチェック方法を考えてみた[初心者から上級者まで活用できる] | DevelopersIO
                  • 【2021年】AWS全サービスまとめ | DevelopersIO

                    こんにちは。サービスグループの武田です。このエントリは、2018年から公開しているAWS全サービスまとめの2021年版です。 こんにちは。サービスグループの武田です。 このエントリは、2018年から毎年公開している AWS全サービスまとめの2021年版 です。昨年までのものは次のリンクからたどってください。 AWSにはたくさんのサービスがありますが、「結局このサービスってなんなの?」という疑問を自分なりに理解するためにまとめました。 今回もマネジメントコンソールを開き、「サービス」の一覧をもとに一覧化しました。そのため、プレビュー版など一覧に載っていないサービスは含まれていません。また2020年にまとめたもののアップデート版ということで、新しくカテゴリに追加されたサービスには[New]、文章を更新したものには[Update]を付けました。ちなみにサービス数は 205個 です。 まとめるにあ

                      【2021年】AWS全サービスまとめ | DevelopersIO
                    • Awesome Dev Tool Tips 🔥

                      Contents (Click to expand) ↕️ Design Mode Pretty Print Command Pallet and Super Search Snippets Live Expressions Tracking Changes Console Shorthand Find Unused Code Rendering Panel Network Paint Times Network Timings Inspect Network Requests Performance Identifying Memory Leaks Raw Memory Inspection Test bfcache Full Refresh Lighthouse Page Size Breakdown Record User Flows Advanced User Flow Opera

                        Awesome Dev Tool Tips 🔥
                      • 自作RDBMSやろうぜ!

                        Skip to the content. 自作RDBMSやろうぜ! このサイトの目的 RDBMS(いわゆるリレーショナルデータベース)というものはプログラミング言語の処理系や、OSなどと同様に、世の中で広く使われているソフトウェアであるにも関わらず、いざ自作してみようと思うと日本語で記述されたサイトや書籍で、必要な情報・情報源がまとまったものがないことに気づきました そこで、叩き台として、本サイト管理人および数名のコミッタで開発している自作RDBMSである SamehadaDB が軌道に乗るまでの経験をベースに、自作RDBMSするための道筋をある程度整理して書き記してみました 各々の情報・情報源はあいかわらず多くが英語で記述されていますが、その点はご容赦下さい なお、本サイトは技術的な解説を提供するのではなく、適切と思われる情報・情報源をポイントするようなサイトとなることを想定しています

                        • 自作RDBMSやろうぜ!(Zenn出張版)

                          Disclamer 本記事は自作DBMSやろうぜ! のページの 22/05/27 JST 22:38 の時点での内容をZenn記事向けに修正して作成したものです 元コンテンツのライセンスについては以下をご参照ください LICENCE 元コンテンツの方は更新が継続されていますので、よろしければそちらもご覧ください この記事の目的 RDBMS(いわゆるリレーショナルデータベース)というものはプログラミング言語の処理系や、OSなどと同様に、世の中で広く使われているソフトウェアであるにも関わらず、いざ自作してみようと思うと日本語で記述されている必要な情報・情報源がまとまったサイトやブログ記事がないことに気づきました そこで、叩き台として、筆者および数名のコミッタで開発している自作RDBMSである SamehadaDB が軌道に乗るまでの経験をベースに、自作RDBMSに関する情報をある程度整理して書

                            自作RDBMSやろうぜ!(Zenn出張版)
                          • GitLab.comはどうやって6TBのPostgreSQLを9.6から11にたった2時間で移行したのか? | DevelopersIO

                            GitレポジトリのホスティングサービスGitLab.comは2020年の5月に 6TB あるPostgreSQL 9.6クラスターをたった2時間のメンテウィンドウ中に11.7へアップグレードしました。 GitLab.comのエンジニアブログに、このPostgreSQLのメジャーアップグレードプロジェクトが解説されていたので、かんたんにご紹介します。 How we upgraded PostgreSQL at GitLab.com | GitLab ポイント PostgreSQL 9.6から 11.7 へのメジャーアップグレード 2時間のメンテナンスウィンドウ内でアップグレード完了 データサイズは6TB DBクラスターは GCP 上の 12台の VM インスタンスで構成 クラスターはアップグレード用の8台とリカバリー用の4台に分割 pg_upgrade & ハードリンクでインプレースアップグ

                              GitLab.comはどうやって6TBのPostgreSQLを9.6から11にたった2時間で移行したのか? | DevelopersIO
                            • ぐるなびにあった2億ファイルをAWSにデータ移行しました - ぐるなびをちょっと良くするエンジニアブログ

                              こんにちは!店舗開発チームの滝口です。 ぐるなびでは、認証・認可のプラットフォーム開発に携わったのち、現在はレストランデータの運用をしつつ、ぐるなび掲載ページや、店舗向け管理画面の開発をしています。 はじめに このたび、オンプレで稼働していた「非構造化データストレージ(通称:UDS)」をAWSに移行しました。 UDS は NAS に保存されているファイルを REST API を介して CRUD 操作できるシステムで、ぐるなびで掲載している店舗の画像や CSS 、Javascript 等の保存に利用されています。 この記事では NAS に保存されたファイルをどのようにして AWS に移行したのか、その移行方式や AWS アーキテクチャを紹介します。 目次 はじめに 目次 UDS 基本情報 今回使った主な AWS AWS を活用して実現したいこと AWS 導入におけるアーキテクチャ AWS へ

                                ぐるなびにあった2億ファイルをAWSにデータ移行しました - ぐるなびをちょっと良くするエンジニアブログ
                              • 分散データシステム入門の決定版『データ指向アプリケーションデザイン』をたった30分で学んでみた #DataEngineeringStudy | DevelopersIO

                                基調講演「30分でわかるデータ指向アプリケーションデザイン」 ・ スピーカー 斉藤 太郎氏  Twitter:@taroleo / Github:@xerial Principal Software Engineer , Treasure Data 東京大学理学部情報科学科卒。情報理工学 Ph.D。データベース、大規模ゲノムデータ処理の研究に従事。その後、スタートアップであるTreasure Dataに加わり、アメリカ、シリコンバレーを拠点に活動中。日本データベース学会上林奨励賞受賞。OSSを中心にプログラミングやデータ処理を簡単にするためのプロダクトを作成している。 「30分でわかるデータ指向アプリケーションデザイン」最新の論文にも触れながら、分散データシステムの世界の魅力を伝えていきます。後半、@tagomoris https://t.co/TQ2TnsFIOT… — Taro L.

                                  分散データシステム入門の決定版『データ指向アプリケーションデザイン』をたった30分で学んでみた #DataEngineeringStudy | DevelopersIO
                                • Announcing D1: our first SQL database

                                  This post is also available in Français, Deutsch, Español, 简体中文, 日本語 and 繁體中文. We announced Cloudflare Workers in 2017, giving developers access to compute on our network. We were excited about the possibilities this unlocked, but we quickly realized — most real world applications are stateful. Since then, we’ve delivered KV, Durable Objects, and R2, giving developers access to various types of st

                                    Announcing D1: our first SQL database
                                  • フロントエンドの新規開発でNext.jsの採用を見送った話 - バイセル Tech Blog

                                    ※こちらはバイセルテクノロジーズ Advent Calendar 2023の10日目の記事です。 前回の記事は、金澤さんのAuth0とEntra IDを扱うプロダクト同士を繋げるためのIstio設定あれこれでした。 はじめに こんにちは、開発3部の神保です。 バイセルでは、お客様宅への出張訪問による買取が買取チャネルの主力となっています。現在開発3部の弊チームでは、この出張訪問買取で使用されるWebアプリケーション「Visit」の新規開発を進めています。 VisitのフロントエンドにはReactを採用しましたが、Next.js等のフレームワークは使用せず、Vite + ReactによるSPA (Single Page Application)構成を選択しました。 技術選定の過程では、社内での採用事例などからNext.jsも検討の対象となりましたが、最終的にはその採用を見送る結論に至りました

                                      フロントエンドの新規開発でNext.jsの採用を見送った話 - バイセル Tech Blog
                                    • フロントエンドの"ちょうどいい"自動テストのはじめかた - Atrae Tech Blog

                                      Wevoxのフロントエンドエンジニアをしているタガミです。最近はmonorepo構成に移行中のWevoxフロントエンドのテストやデザインシステムなどをいい感じにしようとしています。 この記事では、WevoxというSaaSプロダクトのフロントエンドにおける自動テストの話をします。Wevoxはリリースから5年以上が経過し、チームのメンバーも増え、またソースコードも巨大化しています。そんな中でフロントエンドも"式年遷宮"をして、改善を繰り返しています。中にはソースコードをガラッと変えるようなリファクタもあり、担当するエンジニアにとってはデグレの心配が付き纏います。そんな日々変化するフロントエンドを支えるのが自動テストです。 Wevoxの開発チームは決して大人数ではありません。そんなチームでも品質の改善のために一歩ずつ改善しつつある経験をもとに、フロントエンドの自動テストポイントをいくつかお伝えし

                                        フロントエンドの"ちょうどいい"自動テストのはじめかた - Atrae Tech Blog
                                      • 毎日本番DBをダンプして、ローカルと開発環境で利用して生産性を上げてる話

                                        シードデータで動作確認して大丈夫だったのに、本番反映してみたら想定してなかった挙動・エラーが出た😱そんな経験はありませんか。 恥ずかしながら私は今までに何回もありました。機能開発だけじゃなくバッチやマイグレーションなんかでも発生しがちなコレ。またはシードデータで動作確認できても、本番データでも通用するか検証ができないままプルリクを作る、なんていうこともあると思います。今回はこちらを無くす試みをしたお話です。 「もう本番DBで開発しちゃえばいいじゃない」の問題点 この課題を解決するには、極論すると本番DBで開発するしかないのですが、そうなると言うまでもなく以下の問題が出てきます。 レビュー通過してないコードが本番に影響を与える トライ&エラーができない 個人情報をはじめとするセンシティブな情報が開発者の端末に漏れる データ量が多すぎてローカルに持ってこれない しかし言い換えると、これらをク

                                          毎日本番DBをダンプして、ローカルと開発環境で利用して生産性を上げてる話
                                        • 【2022年】AWS全サービスまとめ | DevelopersIO

                                          こんにちは。サービスグループの武田です。このエントリは、2018年から公開しているAWS全サービスまとめの2022年版です。 こんにちは。サービスグループの武田です。 このエントリは、2018年から毎年公開している AWS全サービスまとめの2022年版 です。昨年までのものは次のリンクからたどってください。 AWSにはたくさんのサービスがありますが、「結局このサービスってなんなの?」という疑問を自分なりに理解するためにまとめました。 今回もマネジメントコンソールを開き、「サービス」の一覧をもとに一覧化しました。そのため、プレビュー版など一覧に載っていないサービスは含まれていません。また2021年にまとめたもののアップデート版ということで、新しくカテゴリに追加されたサービスには[New]、文章を更新したものには[Update]を付けました。ちなみにサービス数は 223個 です。 まとめるにあ

                                            【2022年】AWS全サービスまとめ | DevelopersIO
                                          • Dockerfileを書かずにBuildpacksで圧倒的に軽量なDockerイメージを作成する(539MB->245MB) - 🤖

                                            はじめに 2018 年 10 月に Cloud Native Buildpacks は Cloud Native Computing Foundation (CNCF)に Sandbox として受け入れられました。 CNCF には Kubernetes, Prometheus, Envoy, Fluentd など有名プロジェクトも多く受け入れられています。 Buildpacks を使うことで、Dockerfile を書かなくても Docker イメージを作成できます。 また、作成されるイメージはかなり軽量でした。 buildpacks.io 試してみた 今回は、以下のリポジトリの Java アプリケーションの Docker イメージを作成します。 github.com インストール # Mac $ brew install buildpacks/tap/pack # Linux $ wge

                                              Dockerfileを書かずにBuildpacksで圧倒的に軽量なDockerイメージを作成する(539MB->245MB) - 🤖
                                            • Google Cloud 上で 100 兆桁の円周率を計算 | Google Cloud 公式ブログ

                                              ※この投稿は米国時間 2022 年 6 月 8 日に、Google Cloud blog に投稿されたものの抄訳です。 記録は破るためにあります。2019 年、Google は 31 兆 4000 億桁の円周率を計算し、当時の世界記録を樹立しました。そして 2021 年には グラウビュンデン応用科学大学 の科学者が、さらに 31 兆 4000 億桁上回る計 62 兆 8000 億桁を計算しました。そして本日、Google は100 兆桁の円周率を計算し、世界記録を更新したことを発表します。 Google Cloud を使って円周率の桁数の世界記録を更新1するのは今回で 2 度目で、わずか 3 年で桁数を 3 倍に伸ばしました。 この新記録は、 Google Cloud のインフラストラクチャが年々高速化していることの証とも言えます。記録達成の背景には、 Google Cloud の安全でカ

                                                Google Cloud 上で 100 兆桁の円周率を計算 | Google Cloud 公式ブログ
                                              • WEB開発に役に立つAPI一覧+API毎に関連するQiita記事を分類 ! - Qiita

                                                前回: Qiita APIで記事からYoutube動画を集めてみた 🎬 、Qiita APIを使って、Qiita記事を取得してYoutube動画のURLを抽出することができました。 今回は、特定APIに関連したQiita記事を取得して、API毎に分類、タグを集計してドーナツグラフ化することでAPIの特徴を表してみました。 最新のAPI一覧はこちら API一覧 | DOGAKIITAA! ~ APIごとにQiita記事を分類 ~ Google系 Cloud Vision API https://cloud.google.com/vision/docs/quickstart 📝 機械学習を使用して画像を解析します。画像ラベリング、顔やランドマークの検出、光学式文字認識(OCR)、不適切なコンテンツへのタグ付けなどができます。 Cloud Vision APIの凄さを伝えるべくRasPi b

                                                  WEB開発に役に立つAPI一覧+API毎に関連するQiita記事を分類 ! - Qiita
                                                • Redis Explained

                                                  Redis Explained InfographicWhat is Redis?Redis (“REmote DIctionary Service”) is an open-source key-value database server. The most accurate description of Redis is that it's a data structure server. This specific nature of Redis has led to much of its popularity and adoption amongst developers. 👋🏾You are reading Architecture Notes! Crave some byte-sized bites of this? Join me on Twitter. If it's

                                                    Redis Explained
                                                  • SQLite、複数クライアントからの同時書き込みを可能にする「BEGIN CONCURRENT」文を実装へ

                                                    SQLite、複数クライアントからの同時書き込みを可能にする「BEGIN CONCURRENT」文を実装へ SQLiteの開発チームは、複数クライアントからの同時書き込みを可能にするBEGIN CONCURRENT文を実装していることを明らかにしました。 これまでSQLiteでは書き込みの同時実行はできず、つねに1つのクライアントだけが書き込み可能でした。 同時書き込み処理は、データベースのジャーナルモードが「wal」(Write-Ahead-log)もしくはwalを改良した「wal2」で、BEGIN CONCURRENT文を実行した場合に可能となります。 どのように同時書き込み処理が行われるのかについては、上記のWebページの説明を引用しましょう。 ロックが延期されることで同時書き込みが可能に まず、書き込み時のロックがCOMMITまで延期されることで同時書き込みが実現されると説明されて

                                                      SQLite、複数クライアントからの同時書き込みを可能にする「BEGIN CONCURRENT」文を実装へ
                                                    • Flutterアプリにおける、過不足ない設計の考察🎅

                                                      Photo by Hush Naidoo Jade Photography on Unsplash「一般的なモバイルアプリ」の設計全般において、特に何に気を付ける必要があるか、あるいは逆にあまり気にしてなくても良いのではと思うことなどを述べていきます。 (…のつもりでしたが、後者含めると1記事に収めるの困難で、最後にさらっと触れつつ別記事で手厚く書きたいところです🤔) ここでの「一般的なモバイルアプリ」は規模観点では以下程度のイメージですが、それを超えるような規模でも通ずる内容も多いと思っています。 コード量: 数万〜十数万行実装者: 一桁人種類としては(スマホ向けの)クライアントアプリコードであり、以下などではないです。 パッケージ・ライブラリではないサーバーサイドではないこの種類によって適切な組み方はけっこう変わり、アプリコードは依存関係の末端側(基本的に依存される側にはならない)な

                                                        Flutterアプリにおける、過不足ない設計の考察🎅
                                                      • Cloudflare Workers それは Frontend / Node.js が CDN Edge Side まで拡張されるもの

                                                        最近は Cloudflare Workers が熱くて、週末はずっとその調査しています。この記事はそのまとめです。 注意点として、手元でいろいろなパターンで動かして試してはいますが、プロダクション環境で運用したわけではないです。それを踏まえた上でお読みください。 特に断りが無い限り、引用文は DeepL で翻訳したものです。 Cloudflare Workers とはなにか Cloudflare Workers | サーバーレスコンピューティング | Cloudflare 一言でいうなら 「ServiceWorker の API が CDN Edge 上で動く JavaScript 処理系」 です。 Technology Radar では、まだ ASSESS(調査) フェーズという扱いです。 Cloudflare Workers | Technology Radar | ThoughtWo

                                                          Cloudflare Workers それは Frontend / Node.js が CDN Edge Side まで拡張されるもの
                                                        • アーキテクチャの進化はドメインイベントが起点になる - KAKEHASHI Tech Blog

                                                          こちらの記事はカケハシ Advent Calendar 2023 Part2の24日目の記事になります。 adventar.org はじめに 反復的な開発は、変更容易性の高いソフトウェアが不可欠です。ソフトウェア開発の経験がある方なら、デリバリ後の洞察や市場環境の変化から、新しい機能の追加やアーキテクチャの進化の必要性に直面したことが一度はあるでしょう。 私自身、要求分析手法やSOLID原則等の技法を取り入れ、変更容易性に対応する多くのプロジェクトに参加しました。しかし、どれだけ優れた手法や技法を持っていても、変更が難しい要求が出てくることは避けられません。その際、「過去の出来事」を正確に記録していれば、後から見返して問題解決が容易だったと感じることがよくあります。 ドメイン駆動設計(DDD)では、「過去に起こった出来事」を表現するドメインモデルを「ドメインイベント」と呼びます。変更容易性

                                                            アーキテクチャの進化はドメインイベントが起点になる - KAKEHASHI Tech Blog
                                                          • Datadog メトリクスモニター作成入門

                                                            Datadog はモニタリング関連の SaaS ではおそらく最も利用されているサービスでしょうが、公式ドキュメントが豊富にある割には何から読み始めれば良いかわかりにくく、慣れるまでの道が険しい印象です。 本エントリーでは、Datadog が既に導入されている組織で、Datadog モニターを使って監視をしたいけど、モニターの設定方法がよくわからないといった方を対象に、メトリクスモニターの作成に焦点を絞って解説していきます。なお、あくまで Datadog の使い方についての解説であり、どのようなモニターを設定すべきかについては触れません。 メトリクスの収集についても触れたかったんですが、力尽きたので、メトリクスの収集については気が向いたら別エントリーを書きます。 アジェンダ メトリクスモニターの作成方法の基本 クエリの定義について クエリの評価期間・評価方法・アラート条件の指定 クエリの結果

                                                              Datadog メトリクスモニター作成入門
                                                            • レガシーシステムをDocker環境へ移行させた話

                                                              はじめに初めまして、FinatextグループのK-ZONEチームでインターンをしている松永と申します. 現在インターンではバーチャル株投資ゲームの「トレダビ」の改善を行っています. トレダビを長く運用し続けてきた弊社ですが、長年の運用から技術的負債が溜まっていました. その中の一つに、トレダビのローカルの開発環境でゲーミフィケーションサーバ(トレダビにおいてゲーム的な要素を担当するサーバ)がDocker上で動いておらず、ローカルで開発を進める際に特定の画面の確認ができないという問題がありました. この問題をどのように解決したかについて紹介します. トレダビの開発環境についてトレダビはRuby on Rails + MySQL + Java(ゲーミフィケーションサーバ)で運用されており、AWSの開発環境では以下のような構成で動作しています. しかし、トレダビのローカルの開発環境ではゲーミフィ

                                                                レガシーシステムをDocker環境へ移行させた話
                                                              • コンテナのベストプラクティスに対しておこがましくも言ってみる - Qiita

                                                                最近実際に開発現場にコンテナを導入してきた経験から、公式ドキュメントに記載されているベストプラクティスに実際どうなんだということを言ってみようと思います。公式に書いてあることを間違ってると指摘という意図はありません 発言は個人の見解に基づくものであり、所属組織を代表するものではありません。 2023/12/3更新: 燃えかけてるのでタイトルを変えました。 補足: こちらの環境は下記を想定しています。 Java CICD/本番環境イントラネット内に整備 WF開発 マルチステージ・ビルドを使う マルチステージビルドの目的 公式ドキュメントには、下記のように記載があります。 マルチステージ・ビルド は、中間レイヤとイメージの数を減らすのに苦労しなくても、最終イメージの容量を大幅に減少できます。 つまり、最終イメージの容量を減らすことが目的であって、その一つの手段としてマルチステージビルドを進めて

                                                                  コンテナのベストプラクティスに対しておこがましくも言ってみる - Qiita
                                                                • MVCCとInnoDBでの実装について - shallowな暮らし

                                                                  こんにちは。id:shallow1729です。先日はredo logを中心にストレージエンジンについて解説を行いましたが、今回は同時実行制御、特にMySQLなど多くのデータベースで採用されているMultiversion Concurrency Control(MVCC)という技術にフォーカスしようと思います。 今回の記事ではまず前半でMVCCというものがどういうものかについて解説をして、次にMVCCの実装方法についてInnoDBの実装を参考にしながら見ていこうと思います。前提知識はあまりいらないと思いますが、リレーショナルデータベースの操作経験はあったほうがいいかなと思います。また、前回のストレージエンジンの解説で述べた内容はあまり説明しないので、軽く目を通してもらえると頭に入りやすいかなと思います。 shallow1729.hatenablog.com トランザクションの原子性 まずトラ

                                                                    MVCCとInnoDBでの実装について - shallowな暮らし
                                                                  • AWS ファイルストレージサービスの選び方 | Amazon Web Services

                                                                    Amazon Web Services ブログ AWS ファイルストレージサービスの選び方 オフィス文書や画像データなどの様々な非構造化ファイルを、ファイル共有サーバや NAS(Network Attached Storage) などに格納して共有で利用されている方も多いと思います。AWS のファイルストレージサービスを利用することで、ファイル共有ストレージを簡単にクラウド上へ構築できます。また、AWS が提供するフルマネージドサービスのため、パッチ適用やストレージのディスク増設などの運用負荷を軽減できるメリットがあります。初期費用が不要の従量課金のため手軽に利用でき、調達が不要なのですぐに利用を開始することができます。また、ストレージのバックアップ機能が備わっているため、手間のかかるバックアップの設計や運用負荷も軽減できます。 AWS のファイルストレージサービスは、Amazon Ela

                                                                      AWS ファイルストレージサービスの選び方 | Amazon Web Services
                                                                    • VSCode + Dockerでよりミニマルでポータブルな研究環境を

                                                                      はじめに もっとミニマルで簡単なポータブルな環境を! 自分自身の研究のための環境構築についてこれまで二本の記事を書いてきました. これらの記事から二年ほどたち, いくつかの点において不満点が出てきました. 特に, GCPや自宅のサーバー上でリモートで作業することが多くなってきたので, よりミニマルでポータブルな環境が必要になりました. 以下では, 現時点で最小限の努力で環境を再現ができることを目標にしたDockerベースのGitHubレポジトリのテンプレートとその使い方を紹介します. このテンプレートを用いて作られた環境は, 新たなコンピュータ上で最短4ステップで環境を再現できるようになります. git clone VSCodeの"Open in Remote Containers" renv::restore() dvc pull この環境とセットアップはこのレポジトリにテンプレートとし

                                                                        VSCode + Dockerでよりミニマルでポータブルな研究環境を
                                                                      • 突撃!隣の自宅作業環境 Gunosy 2022 - Gunosy Tech Blog

                                                                        はじめに こんにちは、 Gunosy Tech Lab 所属の m-hamashita です。僕はほとんど全てのエンジニアブログのレビューに参加しているのですが、アドベントカレンダーの時期は大変ですね。 この記事は Gunosy Advent Calendar 2022 の 12 日目の記事です。 11 日目の記事は楠さんの dbt snapshot から学ぶ Slowly Changing Dimension でした。 Slowly Changing Dimension についてわかりやすく書かれている記事でとても面白かったです。 コロナ渦になって、そろそろ 3 年になろうとしており、各社では出社しているところも増えてきていると聞いていますが、皆さんの会社はどうでしょうか? 弊社はまだまだリモートワークが主流で、自分も気が向いたときだけ出社することが多いです。 今回は弊社で恒例になりつつ

                                                                          突撃!隣の自宅作業環境 Gunosy 2022 - Gunosy Tech Blog
                                                                        • フロントエンドのテスト構成について考えてみた in 2023

                                                                          はじめに この記事では、 フロントエンドの開発において意義のあるテストはなにか? それらをコスパよく実現するためにはどうすればよいか? について考えて、作った構成を紹介します。 前提 下記の技術スタックを利用していますが、これ以外のスタックでも応用可能な仕組みが多いと思います。 Next.js Storybook playwright msw msw-snapshot (拙作) 注意事項 この記事の構成は、まだまだ実験的な機能だったり怪しい技術が一部採用されています。 msw-snapshot 拙作のライブラリであって、動作が怪しい可能性がめっちゃあります。 Next.js の testmode playwright + msw を実現するために必要でした。 まだまだ全然まともに動かないかもしれません。(サンプルリポジトリの単純なテストは動いた) サンプル 下記のリポジトリにサンプルを用意

                                                                            フロントエンドのテスト構成について考えてみた in 2023
                                                                          • Apache Iceberg とは何か - 流沙河鎮

                                                                            はじめに 概要 Apache Iceberg(アイスバーグ)とは [重要] Icebergの本質はTable Specである Table Spec バージョン Icebergハンズオン Icebergの特徴 同時書き込み時の整合性担保 読み取り一貫性、Time Travelクエリ、Rollback Schema Evolution Hidden Partitioning Hidden Partitioningの種類 時間 truncate[W] bucket[N] Partition Evolution Sort Order Evolution クエリ性能の最適化 ユースケース Icebergのアーキテクチャ Iceberg Catalog Iceberg Catalogの選択肢 metadata layer metadata files manifest lists manifest f

                                                                              Apache Iceberg とは何か - 流沙河鎮
                                                                            • 自作して学ぶKubernetes Scheduler | メルカリエンジニアリング

                                                                              Mercari advent calender の21日目を担当します@sanposhihoです。現在大学の学部4回生で、メルカリでは内定者インターンとして、メルカリのホーム画面などのバックエンドを担当するチームに所属しています。 また、最近は個人的にKubernetesやその周辺のOSSにコントリビュートをしていて、特にKubernetesのコントロールプレーンのコンポーネントのうちの一つであるkube-scheduler周りを触ってることが多いです。 後で詳しく説明しますが、kube-schedulerはPodをどのNodeで実行するかを決定しているコンポーネントです。NodeAffinityや比較的新しいものだとPod Topology Spread Constraintsなど、Podのスケジュールの制約を指定できる機能も基本的にこのkube-schedulerに実装されています。

                                                                                自作して学ぶKubernetes Scheduler | メルカリエンジニアリング
                                                                              • TabFS

                                                                                Going through the files inside a tab's folder. For example, the url.txt, text.txt, and title.txt files tell me those live properties of this tab (Read more up-to-date documentation for all of TabFS's files here.) This gives you a ton of power, because now you can apply all the existing tools on your computer that already know how to deal with files -- terminal commands, scripting languages, point-

                                                                                  TabFS
                                                                                • 至高のGoプラグイン用ツールを作った - knqyf263's blog

                                                                                  最近YouTuberのリュウジの料理を毎日作っているので至高とか無限とか言いがちですが個人の感想です。万人にとって美味しい料理はないように、万人にとって至高のツールは存在しません(何の話?)。ちなみに公開してすぐバグを見つけてしまったので全然至高じゃありませんでした。 要約 概要 特徴 使い方 流れ 事前準備 インタフェースの定義 SDKの生成 プラグインの実装 ホストの実装 実行 発展 Host Functions ファイルアクセス その他 苦労した点 まとめ 要約 Goでプラグイン機構を実現するためのツールを作りました。Protocol Buffersのスキーマからコードを自動生成するので簡単にプラグイン機構を実現可能です。内部的にはWebAssembly(Wasm)を使っています。最近はWasmはブラウザ外での利活用が進んでおり、今回のツールもブラウザは一切関係ないです。Wasmはサ

                                                                                    至高のGoプラグイン用ツールを作った - knqyf263's blog