並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 1678件

新着順 人気順

mapの検索結果121 - 160 件 / 1678件

  • 総データ量350TB超。30年以上かけた世界遺産デジタルアーカイブ化の取り組み

    中国アジアITライター 山谷 剛史 1976年生まれ、東京都出身。2002年より中国やアジア地域のITトレンドについて執筆。中国IT業界記事、中国流行記事、中国製品レビュー記事を主に執筆。著書に『中国のITは新型コロナウイルスにどのように反撃したのか?』(星海社新書)『中国のインターネット史 ワールドワイドウェブからの独立』(星海社新書)『新しい中国人 ネットで団結する若者たち』(ソフトバンククリエイティブ)など。 中国甘粛(カンシュク)省、シルクロードの観光地として知られる敦煌は、仏教壁画が描かれた492の洞窟からなる莫高窟と、砂漠の鳴沙山・月牙泉が有名だ。毎年5月から10月が観光の最盛期で、莫高窟はこの期間ほぼ毎日入場制限がかかるほど人気だ。 莫高窟の文化財の保護と研究のために設立された敦煌研究院では、英国国立図書館とも提携し、これまで30年以上かけてデジタル化が行われ、そのデータ量は

      総データ量350TB超。30年以上かけた世界遺産デジタルアーカイブ化の取り組み
    • Aurora MySQL におけるロック競合(ブロッキング)の原因を事後調査できる仕組みを作った話

      こんにちは。 DBRE チーム所属の @p2sk です。 DBRE(Database Reliability Engineering)チームでは、横断組織としてデータベースに関する課題解決や、組織のアジリティとガバナンスのバランスを取るためのプラットフォーム開発などを行なっております。DBRE は比較的新しい概念で、DBRE という組織がある会社も少なく、あったとしても取り組んでいる内容や考え方が異なるような、発展途上の非常に面白い領域です。 弊社における DBRE チーム発足の背景やチームの役割については「KTC における DBRE の必要性」というテックブログをご覧ください。 本記事では、Aurora MySQL でロック競合(ブロッキング)起因のタイムアウトエラーが発生した際に根本原因を特定することができなかったので、原因を後追いするために必要な情報を定期的に収集する仕組みを構築した

      • Playwrightを使ったE2Eテストを導入した話 - インフラ編 Playwright × Allure Report × AWS - Uzabase for Engineers

        はじめに こんにちは。ソーシャル経済メディア「NewsPicks」の QA/SET チームの海老澤です。 先日は Playwright を使ったE2Eテストの導入について、紹介させていただきました。 今回は作成したテストをAWS 基盤上で動かす方法を紹介させていただきます。 前回の記事 tech.uzabase.com E2Eテスト実行のタイミング NewsPicksでは 下記のタイミングで E2Eテストを実行させています。 ①リリース時のカナリーデプロイ後 NewsPicks ではカナリーリリースを採用していてカナリーへのデプロイが完了した後、カナリーに向けてE2Eテストが動きます。 ②開発環境デプロイ後 動作確認をしたい場合に feature ブランチなどでデプロイ後 E2Eテストを実行できるようにしています。 本記事では主に 「②開発環境デプロイ後」 を例に紹介します。 実行方法 具

          Playwrightを使ったE2Eテストを導入した話 - インフラ編 Playwright × Allure Report × AWS - Uzabase for Engineers
        • Ruby のメモリ使用量問題を調査し upstream で解決していただいた話 - ANDPAD Tech Blog

          はじめに こんにちは。リアーキテクティングチームの髙橋と申します。 この記事では、アンドパッドの施工管理サービスで利用している Ruby をバージョンアップしたときに発生したメモリ使用量の問題の発生から解決までをお話しします。 Ruby のバージョンアップ(3.0 -> 3.2) アンドパッドでは昨年 2023 に、施工管理サービスで利用している Ruby を 3.0 から 3.2 にバージョンアップしました。 バージョンアップ自体は過去に確立済みの手法(詳しくは過去記事をご参照ください)により、粛々と進められリリースされました。 ところがこのリリースから数日後、とある問題が発覚しました。 メモリ増大問題 アプリケーションのリソース使用状況を監視している SRE チームのメンバーから、以下のような連絡がありました。 Ruby バージョンアップのリリース以降、アプリケーションの利用するメモリ

            Ruby のメモリ使用量問題を調査し upstream で解決していただいた話 - ANDPAD Tech Blog
          • Ichigo Lispコンパイラ完全解説

            Ichigo Lispコンパイラ完全解説 はじめに この記事では私がWebAssemblyで書いた Ichigo Lispという LISP 1.5実装のコンパイラのソースコードをすべて解説する。 というのも、最近とあるコンパイラの本を読んで 「説明が特定の実装に基づいてる割にそのソースが一部しか載ってない」 という不満を感じたのだが、自分で書いたコンパイラの記事 を読み返してみると、コンパイラのソースコードが一切出てこないことに気づいた。 こんな記事を書きながらよく人様の本に不満を持てたものだと 瀬戸内海より深く反省したので、 ここにIchigo Lispのコンパイラのすべてのソースコードを解説する。 想定読者とか Ichigo Lispのコンパイラは(ほとんど)すべてLISP 1.5で書かれている。 LISP 1.5特有のややこしい機能などは使っていないので、 Common Lisp、S

            • 1BitLLMの実力を見る|shi3z

              1BitLLMは本当に実現可能なのか?そして、実現されると予告されていることに意味はあるのか? ようやく再現実装に成功した人が現れたので僕も試してみた。 ちなみに1Bit(1.58bit) LLMについての考察はこのページが面白いので一読をお勧めする。 ただし、普通のHuggingFaceのお作法とはかなり違うので注意が必要。 まず、このHuggingFaceリポジトリを丸ごとgit cloneする $ git lfs install $ git clone https://huggingface.co/1bitLLM/bitnet_b1_58-3B $ cd bitnet_b1_58-3Bこれをやらずにいつもの凡例みたいにいきなりpipelineに読み込もうとすると謎のエラーが出て悩まされることになる。海外でも悩んでる人が何人もいるみたいだ。まあ個人的には「こんな説明で誰がわかる?」と思

                1BitLLMの実力を見る|shi3z
              • アクセシビリティが考慮された React Aria のドラッグアンドドロップ

                アクセシビリティが考慮された React Aria のドラッグアンドドロップ 2024.09.07 React Aria は Adobe により提供されている React 用のコンポーネントライブラリであり、アクセシビリティを最優先した設計となっています。本記事では、React Aria により提供されているドラッグアンドドロップ機能を紹介します。 ドラッグアンドドロップは、ユーザーが UI の要素をドラッグして別の場所に移動する操作です。Web アプリケーションにおいて、ドラッグアンドドロップはユーザーが直感的に操作できるため、多くの場面で利用されています。例えばタスク管理アプリケーションにおいて、タスクをドラッグして進行状況を変更したり、ファイル管理アプリケーションにおいてファイルをドラッグしてフォルダを移動する機能などがあります。 従来のドラッグアンドドロップ機能はマウス以外での操作

                  アクセシビリティが考慮された React Aria のドラッグアンドドロップ
                • Goコンパイラのお勉強(3)~配列の効率的な操作に関する最適化~ - Techtouch Developers Blog

                  はじめに string と byte のキャスト最適化 1. map のキー指定のためのキャスト 2. string を byte 毎に処理するためのキャスト 3. 比較のためのキャスト memclr による配列ゼロクリア最適化 ガベージコレクションのマークスキャン回避 おわりに 参考文献 はじめに SRE の izzii (𝕏: @ahneahneahne) です。今回をもって「Go コンパイラのお勉強」と題した連載ブログが完結です!仕事の話とは直接関係がないネタだったので、書く内容に悩むということはなく気持ちよくかけました。さて、今回は「配列の効率的な利用」と題して golang/go CompilerOptimizations で扱われている残り物の紹介をしていきます笑 残り物とは言っても知ると知らないとでは Go コードの読み方が変わるかと思いますので、ぜひ! [第 1 回] G

                    Goコンパイラのお勉強(3)~配列の効率的な操作に関する最適化~ - Techtouch Developers Blog
                  • 【コード付き】非線形の偏微分方程式の数値解法【Python】 - LabCode

                    本記事では、非線形の偏微分方程式の数値解法について、分かりやすい具体例とともに掘り下げていきます。Pythonを活用したアプローチ方法を学びます。 本記事を通して偏微分方程式の数値解法の1つを会得しましょう! 注) 差分法の一部の話だけにとどめています。誤差や境界条件などの詳細な議論は冗長化を避けるためにご紹介していません。 偏微分方程式の数値解法とは 偏微分方程式の数値解法は、偏微分方程式(PDE: Partial Differential Equations)の解を近似的に求めるための手法のことを指します。これらの方程式は、多くの場合、解析的な解が見つけられないため、数値的な手法が必要となります。以下に、主な数値解法をいくつか紹介します。 有限差分法(Finite Difference Method): 空間や時間を離散的なグリッドに分割し、微分を差分に置き換えることにより近似します。

                      【コード付き】非線形の偏微分方程式の数値解法【Python】 - LabCode
                    • 「秋葉原からネジはなくしません」 「ネジの西川」年内廃業→千石電商が業務を引き継ぐと明らかに

                      「秋葉原からネジはなくしません」──東京・秋葉原にある西川電子部品の廃業に伴い、秋葉原に3店舗を構える千石電商が、ネジ販売業務を引き継ぐと明らかにした。販売形態や販売開始時期は未定で、決まり次第正式に発表するという。 30日に千石電商のX(旧Twitter)公式アカウントが明らかにした。X上では「助かります」「ありがとうございます」「困った時の千石電商」と喜びの声が上がっている。 西川電子部品は、昭和27年(1952年)から長年にわたり秋葉原に店舗を構え、各種のネジや工具、圧着端子などを販売してきた。しかし先日、「諸般の事情」により12月をもって廃業すると店頭で明らかに。 各種の規格ネジはもちろん、特殊なネジまで幅広くそろえていた“ネジの西川”の廃業の報せに、ネット上では多くの惜しむ声が上がり、ネジで困った時に助けられたエピソードを語る人も相次いでいた。 関連記事 書店「有隣堂」ヨドバシA

                        「秋葉原からネジはなくしません」 「ネジの西川」年内廃業→千石電商が業務を引き継ぐと明らかに
                      • Optimizing Javascript for fun and for profit

                        I often feel like javascript code in general runs much slower than it could, simply because it’s not optimized properly. Here is a summary of common optimization techniques I’ve found useful. Note that the tradeoff for performance is often readability, so the question of when to go for performance versus readability is a question left to the reader. I’ll also note that talking about optimization n

                        • Zodスキーマでプロンプト生成を行い構造化データを自由自在に扱えて、LLMプロダクト開発が圧倒的に効率化した話 - Algomatic Tech Blog

                          最近はAIエンジニアを名乗ってるerukitiです。フロントエンドもバックエンドも、LLMを触るあれこれもやってるので、「AIエンジニア」くらいを名乗るとちょうどよさそうだなと思ってます。いずれLLM自体の開発なんかもやってるかもしれません。 LLMプロダクトを開発していると、構造化データを作りたいのに、Anthropic ClaudeのAPIにはJSONモードが無いことや、なんならJSONモードやfunction callingを使っても、データが正しい形式に従ってることは保証しがたい、みたいな自体に遭遇することがあります。 JSONが出力できたとしても、構造化データをうまく吐き出させるのは難しいものです。文字列を出力させたいけど、複数あるときは、配列なのか、それともカンマ区切りなのか?項目がオプショナルの場合はどうするか?項目が存在しない、空文字や 0 や undefined や nu

                            Zodスキーマでプロンプト生成を行い構造化データを自由自在に扱えて、LLMプロダクト開発が圧倒的に効率化した話 - Algomatic Tech Blog
                          • 【2024年】AWS全サービスまとめ | DevelopersIO

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

                              【2024年】AWS全サービスまとめ | DevelopersIO
                            • 入社4ヶ月目で73時間かかるバッチ処理を7倍以上高速化した話 - エムスリーテックブログ

                              こんにちは。エンジニアリンググループの武井です。 私は現在、デジカルチームに所属し、クラウド電子カルテ、エムスリーデジカルの開発に携わっています。 昨年夏にエムスリーに入社し、早くも半年が経過しました。 digikar.co.jp この記事では、私が入社してから4ヶ月目に取り組んだ、バッチ処理の運用改善について振り返ります。 特に、新しくチームに加わったメンバーとして意識した点に焦点を当ててみたいと思います。 これから新しいチームに参加する方の参考になれば幸いです。 改善したバッチ 現状の正確な理解 現状に馴染む技術選定 自分なりの+αを加える 改善の結果 We're hiring 改善したバッチ 今回の改善対象は、特定の医療機関に紐づく全患者の全カルテをPDFファイルとして出力する、というバッチです。 デジカルのデータを医療機関側にエクスポートする用途で使われています。 移行前のアーキテ

                                入社4ヶ月目で73時間かかるバッチ処理を7倍以上高速化した話 - エムスリーテックブログ
                              • Express と handlebars で動き続ける日経 — HACK The Nikkei

                                Nikkei Advent Calendar 2023の 14 日目は IDE がやっていきます。いま Web チーム内の基盤改善を専門とするチームで活動しています。自分が入社するより前に作られてメンテナンスがあまりされていなかったシステムを、現代でも戦えるようにするお仕事をしています。メンテナンスを放置することはセキュリティ的によくないので、メンテナンスを専業で行っています。最近の自分の仕事は、今日紹介する rnikkei と呼ばれるマイクロサービス群の Node.js バージョンを、v12 から v18(一部は v20) まで引き上げることです。この rnikkei は当初「爆速の日経」と呼ばれていた頃に設計・実装されたサービスです。今日はそのような過去に作られたサービスにもう一度スポットライトを当ててみようと思います。 see: https://marketing.itmedia.c

                                  Express と handlebars で動き続ける日経 — HACK The Nikkei
                                • 検証されない『スマスマ』〝公開処刑〟──2016年1月18日にフジテレビで起きたこと(松谷創一郎) - エキスパート - Yahoo!ニュース

                                  不自然だった謝罪 27日、フジテレビの定例社長会見が行われた。そこでは、注目される質疑応答が見られた。2016年1月18日に放送されたフジテレビ『SMAP×SMAP』(以下『スマスマ』)での謝罪についてだ。 フジテレビは21日に『週刊フジテレビ批評 特別版~旧ジャニーズ事務所の性加害問題と“メディアの沈黙”』と題した検証番組を放送した。これまでのジャニーズ事務所とフジテレビの関係を検証する内容だ。しかし、そのなかで“公開処刑”とも言われた『スマスマ』については触れられなかった。 このことに対して記者が「なぜ検証の対象にならなかったのか」と問うと、フジテレビの港浩一社長は「検証番組でお伝えした以外の具体的な案件はお答えしない」と前置きしながらも、こう回答した。 「番組制作においては、通常出演者サイドと相談しながら、制作担当者が内容を決めている。あの放送については、解散がささやかれていた当時の

                                    検証されない『スマスマ』〝公開処刑〟──2016年1月18日にフジテレビで起きたこと(松谷創一郎) - エキスパート - Yahoo!ニュース
                                  • 生成AI で思い通りのサイトを出力しよう - Qiita

                                    こんにちは。日頃は blockchain の記事ばかり書いていますが、たまには生成 AI についても書きたいと思います。テーマは生成 AI で出来るだけ思い通りにサイトの生成を行います。 前提 今回は以下条件のサイトを生成します。 Next.js Tailwind LP向け レスポンシブ向け また、検証で利用した GPT は ChatGPT 3.5 です。 Bing Copilot を使用する場合、可能であれば Web 検索との連動を OFF にすることをオススメします。また、自社独自の専門用語をプロンプトへ加える場合は適宜補足説明を手動、または RAG 等でプロンプトへ加えてください。 背景 この記事を書くに当たって感じていた課題と解決したことを記載します。 課題 普段は、GPT系を駆使して素早くコードを作成することを心がけています。バックエンドの生成にはそれほど問題はないのですが、フロ

                                      生成AI で思い通りのサイトを出力しよう - Qiita
                                    • パフォーマンスを気にするならReact Hook Formが無難

                                      React Hook Form は高速。 Formik は早くない。改善は可能。 React Final Form はある程度早い。 React Hook Form が無難ではあるものの、CPU 6× slowdown で 100ms は通常では許容できると考え Formik を採用するのもあり。 比較したライブラリ 計測の対象にしたライブラリは以下の 3 つです。 React Hook Form Formik React Final Form パフォーマンス以外の特徴にも触れておくと、 React Hook Form TypeScript 製 頻繁に更新されている UI とフォームライブラリが密結合になりやすい Formik TypeScript 製 ある程度更新されている UI とフォームライブラリを疎結合にしやすい React Final Form コードのほとんどが JavaScr

                                        パフォーマンスを気にするならReact Hook Formが無難
                                      • 【HTML】dl, dt, ddで組みたくなる表、tableにするのがいいかもね(スクリーンリーダーと検索エンジンのために)

                                        dl や ul で組むべきでないという主張ではありませんので誤解のなきよう! dl で書くんだ!と思える人はそれがいいと思います😉👍 私自身は dl と table が HTML の使い方としてはどちらも正解で差がないように感じられて、どちらを使うべきか判断がつかず悩んだ末、具体的なメリットの部分を見て table にしたという話です。 同じように迷った人の参考になれば幸いです。 詳しくは以降で説明します。 想定する表の内容 この記事の議論では、名前と値の組が複数並んでいる、メタデータの表を想定します。 プログラミング言語でいうところの、連想配列 (Map, Dictionary, JS では Object) の構造に相当します。 具体的には以下のようなものです。 会社概要(「会社名:〇〇、所在地:〇〇、資本金:〇〇、…」) 商品の仕様表(「商品名:〇〇、価格:〇〇、サイズ:〇〇、…」

                                          【HTML】dl, dt, ddで組みたくなる表、tableにするのがいいかもね(スクリーンリーダーと検索エンジンのために)
                                        • Claude3.5、シンセサイザーつくれてすごい

                                          import React, { useState, useCallback, useMemo } from 'react'; const AmbientSynth = () => { const [audioContext, setAudioContext] = useState(null); const [activeOscillators, setActiveOscillators] = useState({}); const initializeAudioContext = useCallback(() => { if (!audioContext) { const context = new (window.AudioContext || window.webkitAudioContext)(); setAudioContext(context); } }, [audioConte

                                            Claude3.5、シンセサイザーつくれてすごい
                                          • Neural Audio Codec を用いた大規模配信文字起こしシステムの構築 - Mirrativ Tech Blog

                                            こんにちは ハタ です。 最近Mirrativ上に構築した配信の文字起こしシステムを紹介したいなと思います 音声からの文字起こしは、各社SaaSでAPI提供されているものがあると思いますが、今回紹介するものはセルフホスト型(自前のGPUマシンを使う)になります 構築していく上で色々試行錯誤したのでそれが紹介できればなと思っています どんなものを作ったか 前提知識: 配信基盤 前提知識: Unix Domain Socket Live Recorder Archiver DS Filter VAD Filter NAC / Compress Transcriber NAC / Decompress Speach To Text コンテナイメージ まとめ We are hiring! どんなものを作ったか 今回作ったものは Mirrativで配信されるすべての音声を対象に文字起こしを行う シス

                                              Neural Audio Codec を用いた大規模配信文字起こしシステムの構築 - Mirrativ Tech Blog
                                            • フロントエンドから Amazon S3 にマルチパートアップロードしたい - カミナシ エンジニアブログ

                                              はじめに Presigned URL(*) などで、Amazon S3 へのアップロード処理を実装していると、大きなサイズのファイルをアップロードしようとしたときに、以下のような課題に直面することがあります。 一回のPUT リクエストでアップロードできるサイズの上限が 5GB まで 単一の HTTP リクエストでアップロードするため、大きなサイズをアップロードしようとしたときに問題が起きる。例えば、アップロードの処理の途中で失敗したとき、最初からやり直しになる。 このようなときに活用したいのが、マルチパートアップロードです。マルチパートアップロードとは、その名の通り、アップロード対象のオブジェクトを小分けにしてアップロードする方法です。 AWS の SDK には、マルチパートアップロードが簡単に行えるような API が用意されているものの、多くは、S3 にアップロードを行うことができる I

                                                フロントエンドから Amazon S3 にマルチパートアップロードしたい - カミナシ エンジニアブログ
                                              • プログラミング言語Rustになぜ注目するのか - Qiita

                                                この記事は NTTコムウェア AdventCalendar 2023 5日目の記事です。 自己紹介&動機 高鶴と申します。NTTコムウェア コーポレート革新本部で、プログラム設計~コーディング~ユニットテストにかかわる技術の社内標準化をやっております。 プログラムの静的な解析で早期にバグを発見・修正することで、後工程でのバグ対処コスト削減(ウォーターフォール開発の場合)や、技術的負債の早期解消(アジャイル開発の場合)を目指す、というのが私のチームの仕事の大きな一部となっています。 静的な解析で早期にバグを発見するツールには、オープンソースでも商用でも様々なものがあります。しかし、ソフトウェアの品質をより抜本的に良くしていこうと思うと、「プログラミング言語を何とかする」というところを考えたくなってきます。 Rustであれば、そのような期待に応えてくれるのではないかと期待し、調査・検証を始めま

                                                  プログラミング言語Rustになぜ注目するのか - Qiita
                                                • 【コード付き】二次元放物形の偏微分方程式の数値解法【Python】 - LabCode

                                                  本記事では、二次元放物形偏微分方程式の数値解法について、分かりやすい具体例とともに掘り下げていきます。Pythonを活用したアプローチ方法を学びます。 本記事を通して偏微分方程式の数値解法の1つを会得しましょう! 注) 差分法の一部の話だけにとどめています。誤差や境界条件などの詳細な議論は冗長化を避けるためにご紹介していません。 偏微分方程式の数値解法とは 偏微分方程式の数値解法は、偏微分方程式(PDE: Partial Differential Equations)の解を近似的に求めるための手法のことを指します。これらの方程式は、多くの場合、解析的な解が見つけられないため、数値的な手法が必要となります。以下に、主な数値解法をいくつか紹介します。 有限差分法(Finite Difference Method): 空間や時間を離散的なグリッドに分割し、微分を差分に置き換えることにより近似しま

                                                  • 演劇業界ではソワレ(夜公演)よりもマチネ(昼公演)の方が集客できるらしい→その要因や関係者・観客の声

                                                    ケラリーノ・サンドロヴィッチ @kerasand 90年代まで、大商業演劇は別として、大抵の舞台はマチネ14時ソアレ19時開演だった。例外は少なかったのではないか。マチネは基本土日のみ、平日マチネがあっても週一回。で、たまに21時半や22時開演のレイト公演が見受けられた。 生活が変わったのだろう。今はマチネの方が圧倒的に集客できるらしい。 ケラリーノ・サンドロヴィッチ @kerasand 劇作家・音楽家・演出家・ナイロン100℃・ケムリ研究室・KERA MAP主宰/ 有頂天、KERA&Broken Flowers、No Lie-Sense、ソロ 等で歌唱中。/「逃亡者K」「まるで世界」CD 、レコード、還暦記念ライブBOX等、通販中→ kemcom.base.ec リンク マイナビニュース 「マチネ」の意味とは? 使い方・例文や「ソワレ」「ジュルネ」についても紹介 ここでは、「マチネ」の意

                                                      演劇業界ではソワレ(夜公演)よりもマチネ(昼公演)の方が集客できるらしい→その要因や関係者・観客の声
                                                    • 大規模サービスのローンチに向け、パフォーマンスチューニングした話 #go #aws

                                                      背景 こんにちは!Hanoi Dev Centerでバックエンドエンジニアをしているminhquangです。この記事では、私がAI事業本部のある新規プロダクト開発に参画した際に経験したパフォーマンスチューニングについて話したいと思います。 皆さんはサービスのローンチ(サービスを世の中に初めて出すリリース)をやったことがありますか。サービスローンチするときに、リクエストのスパイクや、ユーザー数の増加によるサーバー負荷増加など、様々な未知な課題が存在します。 私のチームでは数百万人の利用が見込まれるサービスにおいて、18000RPSを実現するべく負荷試験とパフォーマンスチューニングを実施しました。 本記事では、上記のサービス要件を満たすために私たちが取り組んだ負荷試験やパフォーマンスチューニングについて説明しつつ、これらの経験から得られた学びを共有したいと思います。 前提 技術スタック サーバ

                                                        大規模サービスのローンチに向け、パフォーマンスチューニングした話 #go #aws
                                                      • Blue/Green デプロイを使用した、RDS MySQL/PostgreSQLのアップグレード

                                                        TL;DR RDS の メジャーバージョンアップグレード を行なった PostgreSQL 11.6 -> 15.5 MySQL 5.7.44 -> 8.0.36 PostgreSQL は AWS CDK を利用した、自前での手動切り替えをベースにした Blue/Green デプロイによるアップグレードを行なった MySQL は AWS コンソールから AWSが提供している機能である RDS Blue/Green Deployments による MySQL のアップグレードを行なった nginx の ngx_http_proxy_module を活用してサービスのダウンタイムを防止した はじめに 初めまして。株式会社ジーニーの GENIEE CHAT開発チームのマネージャーを担当しています。 今回は、データベースのメジャーアップグレードを行った際の手順やポイントなどを書いていこうと思います

                                                          Blue/Green デプロイを使用した、RDS MySQL/PostgreSQLのアップグレード
                                                        • Zod を使って CSV からの入力データをバリデーションする - ドワンゴ教育サービス開発者ブログ

                                                          こんにちは、バックエンドエンジニアの日下です。 CSV から JSON へ変換するスクリプトを、TypeScript で実装する機会がありました。 今回は、CSV のデータのバリデーションに Zod を使った話をします。 スクリプトの目的 システム間のデータ連携が目的です。 連携元のシステムから CSV 出力されたデータを、連携先のシステムで利用する JSON へ変換します。 また、JSON への変換以外にも以下の要件があります。 CSV のデータをバリデーションする 連携先のシステムで利用できるデータであることを保証するために、バリデーションを実行します。 バリデーション失敗時に、日本語のエラーメッセージを表示する スクリプトの実行は業務担当のエンドユーザーが行うため、日本語のエラーメッセージを表示します。 CSV の読み込み 元データとなる CSV の読み込みは、csv-parse を

                                                            Zod を使って CSV からの入力データをバリデーションする - ドワンゴ教育サービス開発者ブログ
                                                          • ウォーリーの位置を明かさずウォーリーを見つけたことを証明する「ゼロ知識証明」を説明するための地図塗り分けゲームが登場

                                                            by Si1very 何かを証明したい人が「自分はある事柄を知っている」という事実を、他人に対して「知っている」という事実以外の知識を与えることなく証明する技術が「ゼロ知識証明」です。ゼロ知識証明の例えとして挙げられるのがウォーリーをさがせ!で、具体的には「ウォーリーを見つけた際に、ウォーリーの場所を明かさずに見つけたことだけを証明する」というもの。そんなゼロ知識証明をはじめとする、さまざまな数学上の問題や定理などを直感的に理解できるゲームが公開されています。 rahulilango.com/coloring/ https://www.rahulilango.com/coloring/ 上記URLにアクセスすると、紫色で塗られたイギリスおよびアイルランドの地図が表示されます。この地図を、「隣接する2つの地域が同じ色にならないように色分けしてください」というのが最初の問題です。 地図をクリッ

                                                              ウォーリーの位置を明かさずウォーリーを見つけたことを証明する「ゼロ知識証明」を説明するための地図塗り分けゲームが登場
                                                            • PCIe Gen 4対応なのに2TBで1万7980円のYMTC製NAND搭載格安SSD「MS950」を見つけたので実際に買って転送速度や搭載チップを確かめてみた

                                                              GIGAZINE編集部で使っているデスクトップPCのストレージ空き容量が少なくなってきたので大容量SSDを探していたところ、PCIe Gen 4対応で最大読込速度7400MB/sなのに税込1万7980円というコストパフォーマンスの良すぎるSSD「MS950」を発見。価格の安さやスペックが非常に魅力的だったので、実際に買って搭載されているチップの種類を調べたり、ベンチマークテストを実行したりしてみました。 MS950シリーズ|M.2 2280 PCIe® Gen4 ×4 NVMe SSD - Monster Storage https://taurus-digital.co.jp/products/ms950g75pcie4/ ・目次 ◆1:SSDの選定条件 ◆2:開封の儀&搭載チップを接写してみた ◆3:ハードウェア情報をチェック ◆4:各種ベンチマークで転送速度を測定 ◆5:Ubuntu

                                                                PCIe Gen 4対応なのに2TBで1万7980円のYMTC製NAND搭載格安SSD「MS950」を見つけたので実際に買って転送速度や搭載チップを確かめてみた
                                                              • 日本にバケーションに来た外国人が、日本を訪れる際の基本心得を紹介「ゴミ捨てるな、公共の場ではマナーを守り騒ぐな、片言でいいから日本語を少し学んでおけ」など

                                                                TrinityNYC @TrinityNYC For the love of god, don't be a dumb and annoying tourist. Be the smart tourist. I just came back from a 12-day vacation in Japan, and saw so many annoying tourists that locals can't help but shake their heads at. So here are my five basic tips of traveling in Japan and hopefully they don't shake their heads at you. どうか愚かで態度の悪い旅行客にならないで。きちんとした旅行客になりましょうよ。私は日本で12日間のバケーションを過ごし

                                                                  日本にバケーションに来た外国人が、日本を訪れる際の基本心得を紹介「ゴミ捨てるな、公共の場ではマナーを守り騒ぐな、片言でいいから日本語を少し学んでおけ」など
                                                                • sqlc を TypeScript で利用する

                                                                  まとめ sqlc-gen-typescript かなり良い 自分が TypeScript でウェブアプリを利用するなら間違いなく sqlc を選択する SQL は共通言語という点で本当に偉大 sqlc とは sqlc とは Go で書かれた SQL を元にコードを生成するツール。 なぜ sqlc ? 結局、それぞれの ORM 固有の技術を覚えるくらいなら SQL を覚えた方が早い 拡張に ORM が対応していようがいまいが関係ない SQL パーサーが pg_query_go を利用しているので信頼できる sqlc は PostgreSQL だけなの? sqlc は MySQL や SQLite にも対応している。 sqlc は Go だけなの? sqlc は Wasm でプラグインが書けるようになってきており、つい最近 TypeScript 版がリリースされた。 現時点では、 Postgr

                                                                    sqlc を TypeScript で利用する
                                                                  • Difyワークフロー自動生成|ハヤシ シュンスケ

                                                                    どうもー、シュンスケです。 ついに、ワークフローの自動生成に成功しました! そう、みんなが頑張って作っているDifyのワークフローが何と!! 生成AIにより全自動で作れるように進化しました! もう面倒な作業とはおさらば! DifyがAIでワークフローを自動構築! 「あー、またこの作業やらなきゃ…」 毎日のルーティンワーク、うんざりしていませんか? 請求書の処理、顧客データの入力、資料作成…、やらなきゃいけないことは山積みなのに、どれも時間と手間がかかって、本当に疲れますよね。 「誰か代わりにやってくれないかな…」 そう思ったことがある人は、きっと多いはず。 そんな願いを叶える、 夢のような機能がDifyに登場 しました!それが 「AIワークフロー自動生成」 です。 この機能を使えば、面倒な作業を自動化するワークフローを、AIがサクサクっと作ってくれるんです。 専門知識は一切不要! 普段使っ

                                                                      Difyワークフロー自動生成|ハヤシ シュンスケ
                                                                    • Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ

                                                                      背景 先行・類似事例 自作のメリット Rustで局面画像生成 盤・駒画像の素材 画像処理 入出力 Generatorと下準備 Publish Web Appで使う CDN Edgeで動かす wasm-packでWebAssembly作成 Deno Deploy Vercel Edge Functions Cloudflare Workers Fastly Compute@Edge その他 まとめ Repository 背景 ATrium という AT Protocol のためのライブラリを自作している が、まったくドッグフーディングしていなかった ので、Blueskyに詰将棋の問題を放流するBotを作ってみることにした gfx氏が作ったBot を参考に というわけで、詰将棋の問題の局面を画像で投稿したい が、あまり自分好みの画像を生成できるライブラリやWebサービス等がない ので、結局それ

                                                                        Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ
                                                                      • 「このアーティストが好きな人はこっちも好きかも」をマップで示してくれる「Music-Map」

                                                                        世の中にはさまざまなアーティストがいるため、好みのアーティストを探そうにも数が多すぎてなかなかピンとくるものに出会えません。似たようなアーティストの探索に使えるのが、世界中のユーザーの好みを元にアーティストのマッピングを行うサービスの「Music-Map」です。 Music-Map - Find Similar Music https://www.music-map.com/ Music-Mapでは、ウェブサイトの訪問者に「何が好きで何が嫌いか」を尋ねることによって関係性を学習するシステム「Gnod」に基づいてアーティストのマッピングを行っています。「Aというアーティストが好き」と答えた人の多くが「Bというアーティストも好き」と答えた場合、AとBは近しい関係として設定されます。 「Music-Map」にアクセスすると検索ボックスが出現するので、好きなアーティスト名を入力して検索アイコンをク

                                                                          「このアーティストが好きな人はこっちも好きかも」をマップで示してくれる「Music-Map」
                                                                        • レビュー依頼の優先度について考えていたら、レビュー依頼をスコアリングしてソートするツールができた - エムスリーテックブログ

                                                                          こちらはAI・機械学習チームブログリレー8日目の記事です。前回のブログは高田さんの「AI・機械学習チームで学んだ開発技法で趣味の通知系ツールを量産した」でした! www.m3tech.blog エムスリーエンジニアリンググループ AI・機械学習チームでソフトウェアエンジニアをしている中村(po3rin) です。 「レビュー依頼の優先度」といえば自分の作業とレビューのどちらを優先するかという意味での「優先度」の印象ですが、今回は複数あるレビュー依頼の中で、どのレビューから見ていくかという意味での「優先度」の話をします。 レビューの優先度を考えていく中で、「これは自動化したら面白いのではないか」と思い立ち、レビューの優先度をスコアリングするツールを作ったので、その経緯を簡単に紹介していきます。 レビューの優先度の再考 先に見るべきレビュー依頼の観点 急ぎ系のマージリクエスト メンションされてか

                                                                            レビュー依頼の優先度について考えていたら、レビュー依頼をスコアリングしてソートするツールができた - エムスリーテックブログ
                                                                          • 『葬送のフリーレン』のドイツ語

                                                                            平塚 徹(京都産業大学 外国語学部) 京都産業大学外国語学部では、英語・ドイツ語・フランス語・スペイン語・イタリア語・ロシア語・中国語・韓国語・インドネシア語を専門的に学ぶことができます。 『葬送のフリーレン』に出てくる人名や地名のほとんどはドイツ語が使われている。ドイツ語は「かっこいい」というイメージがあって多くのアニメで用いられている。しかし、プリキュアの名前は英語やフランス語などが使われているのに対して、ドイツ語は使われておらず、「重厚」なイメージが合わないと考えられていると想像される。それに対して、『葬送のフリーレン』のファンタジーの世界観にはドイツ語は相応しいと考えられたのであろう。ところが、主人公のフリーレンと準主人公のフェルンの名前の音は、プリキュア名によくあるパターンに合致している。プリキュア名の「キュア」に続く語は、両唇音で始まるものが多く、ラ行音が多いが(「プリキュア名

                                                                            • Go 1.23のイテレータについて知っておくべきこと

                                                                              はじめに 2024年8月13日、Go 1.23がリリースされ、ついにイテレータが利用可能となりました。 この記事では、Goのイテレータについて、 どうやって使うのか どこまで知っておく必要があるのか を理解することをゴールとします。 基本的な知識 基本的な知識としては、以下の内容を知っていれば問題ないです。 for文のrangeループの仕様が変わった 関数を対象にrangeループを回せるようになる rangeループの対象にできる種類の関数をイテレータと呼ぶ イテレータには3種類ある for文のrangeループの仕様が変わった Go 1.22までは、for文によるrangeループの対象にできたのは、配列, slice, 文字列, map, channel, 整数だけでした。 Go 1.23で、ここに関数(ただし、特定の形式に限る)が加わりました。 ここで、rangeループの対象にできる形式の

                                                                                Go 1.23のイテレータについて知っておくべきこと
                                                                              • 2023年版!エンジニア必見のチートシート集 - Qiita

                                                                                2. 機械学習・AIチートシート まずは機械学習やAI開発に関わるチートシートからです! Machine Learning Cheat Sheet | DataCamp 主要な機械学習アルゴリズム、その利点と欠点、および使用ケースをガイドするものです。初心者からエキスパートまで、誰でも役立つリソースです。 機械学習アルゴリズム チートシート MicrosoftのAzureが提供している機械学習アルゴリズムに関するチートシートです。 TensorFlow Cheat Sheet https://zerotomastery.io/cheatsheets/tensorflow-cheat-sheet/ 機械学習と人工知能のためのオープンソースライブラリ、TensorFlowのチートシートです。基本的な概念やベストプラクティスがまとめられています。 (メールアドレスでサブスクライブするとPDFがダ

                                                                                  2023年版!エンジニア必見のチートシート集 - Qiita
                                                                                • GoConference2024の資料が集まるスレ #gocon

                                                                                  これはサマリ(ここを更新していきます)情報提供(コメント)歓迎!! イテレータによってGoはどう変わるのか Dive into gomock Data Race Detection In Go From Beginners Eye Go1.21から導入されたGo Toolchainの仕組みをまるっと解説 Cleanup handling in Go Custom logging with slog: Making Logging Fun Again! Goにconst型修飾を期待しなくてよい理由 GoのLanguage Server Protocol実装、「gopls」の自動補完の仕組みを学ぶ バイナリを眺めてわかる gob encoding の仕様と性質、適切な使い方 Unified Diff 形式の差分から Go AST を構築して feature flag を自動計装する Mapのパ

                                                                                    GoConference2024の資料が集まるスレ #gocon