はじめまして、開発部の@taikishiinoです。 2020年3月にアンドパッドにジョインし、約一年が経ちました。 現在、チャットサービスの開発・運用をするチームに所属しており、その中で最近、RDSからFirestoreへのデータ移行を行いました。 本記事では、その際の課題やそれに対して実際に行ったことなどを中心にご紹介していきます。 データ移行の背景 僕たちのチャットサービスを開発するチームでは、現在、プロダクトのデータベースをRDSとFirebase RealtimeDatabaseのミックスからFirestoreに移行する大規模プロジェクトが行われています。 旧環境「RDSとFirebase RealtimeDatabase」の課題として、 チャットのアクセスを処理しているAPIサーバーのバックグラウンド処理は複数プロダクト共通で利用しており、チャット起因で負荷が高まってしまうとい
CREATOR CENTRIC新しい時代の創作の可能性「創作活動がもっと楽しくなる場所を創る」、ピクシブではこのミッションのもとに、世界のクリエイターの創作活動を支えるために様々なサービスを開発しています。 時間、言語、国境を越えて 世界中のクリエイターがつながるには、 新しい時代、創作の可能性はどうあるべきか。 ピクシブのメンバーはこの課題に常に向き合っています。 PIXIV DEV MEETUP 2021では、私たちピクシブのメンバーが普段よりお世話になっている方、これからお話したい方をご招待し、ピクシブのメンバーが何を考え、日頃どのような活動を行っているのか、その文化を共有する場所を一緒につくっていきたいと思います。
curl’s official birthday was March 20, 1998. That was the day the first ever tarball was made available that could build a tool named curl. I put it together and I called it curl 4.0 since I kept the version numbering from the previous names I had used for the tool. Or rather, I bumped it up from 3.12 which was the last version I used under the previous name: urlget. Of course curl wasn’t created
こんにちは、インフラ部の id:sue445 です。私事ですが先日GCPの Professional Cloud Architect を取得しました。 そういうわけで今日はGCPではなくAWSの話をします。 tl;dr; 劇的ビフォーアフター 構成 移行のモチベーション パフォーマンス向上 コスト圧縮 アーキテクチャの採択理由 やったこと 1. DB作成 2. MySQL 5.7 -> 8.0 MySQL 8.0でハマったこと MySQL 8.0からデフォルトの認証がcaching_sha2_passwordになった RDSのMySQL 8.0からMariaDB 監査プラグインがなくなった 3. 本番用のDockerイメージを作成 困ったこと:CodeIgniterがログの標準出力に対応していなかった 4. ECS + Fargate + CodePipeline構築 5. CDN作成 6
Spring Batch on Kubernetes: Efficient batch processing at scale Introduction Batch processing has been a challenging area of computer science since its inception in the early days of punch cards and magnetic tapes. Nowadays, the modern cloud computing era comes with a whole new set of challenges for how to develop and operate batch workload efficiently in a cloud environment. In this blog post, I
こんにちは、かたいなかです。 最近転職会議のバッチ処理をすべて冪等にし、処理失敗時に気軽に再実行できるようにすることで運用性を向上させました。 今回の記事ではその取り組みを紹介します。 再実行すると重複送信につながるメール送信バッチ もともと、転職会議では一部のバッチ処理を除いてほとんどのバッチ処理が冪等に作られていました。しかし、残りの冪等ではないバッチ処理では、失敗するたびに毎回アドホックな対応をする必要があり運用性に課題を抱えていました 残っていたもので一番大きな問題を抱えていたのがメール送信バッチです。これは、以下の図のようなアーキテクチャで動いており、ワーカーにメールを送信するように指示するメッセージをSQSにキューイングする処理を行うものです。 このメール送信バッチのキューイング処理が途中で失敗した際に、雑に再実行してしまうと同一のユーザに重複してメールが送信されてしまう事にな
みなさん、こんにちはこんばんは。Classiの基盤バックエンドチームでプロダクトや機能を越えてサーバサイドを中心に困り事を手広く解決する仕事をしているid:aerealです。 今回の記事ではClassiのパフォーマンス改善のため取り組んでいるdronと呼ばれるクラウドネイティブなcron代替 (Cloud Native Cron Alternative) の開発について、運用を見据えてどのような考慮を重ねたのかを紹介します。 背景と課題 現行のワークロード 課題 DBにやさしくない スケールアウトの困難なアーキテクチャ 方針 設計 コンポーネント概説 Facade Job Executor Job Scheduler Endpoint Data Job Data Job Reservation Worker Kicker Worker Endpoint 運用時の考慮事項 追跡・トレーシング
ホーム ライフ 信号機を落札した小学生、独学プログラミングで点灯成功「LEDより昭和の電球式の方がなじみがあって好き」 先月、佐賀市が老朽化に伴い撤去された信号機の入札会を行った。この異例の行事にお年玉もすべて貯金して参加したのが、無類の信号好き・小学5年生のたろうくん。当日は予定よりも2つ多く落札してしまい、「置く場所がなく、お母さんに怒られる。おじいちゃんの家に隠したい」というコメントが大きな話題になったが、その後信号機はどのようにして利用しているのか。ともに入札会に参加したお父さんとたろうくんに話を聞いた。 3歳から好きで… プログラミングを勉強して手作り信号機も多数「他の子と趣味合わない」 3歳の頃から信号機が大好きだというたろうくん ――まず、信号機の入札をしようと思われた理由を教えてください。 お父さん廃棄する予定の信号機を「譲ってほしい」との地元の人からの声を受けて、市が入札
tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,
Go言語のドキュメントに掲載されているソースコードをみると、コメントが緑色になっている以外シンタックスハイライトが特にないことがわかる。 例えばブログの記事はこんな感じ。 blog.golang.org base64.goのソースコードとかを見るとこんな感じ。 golang.org 調べてみると、「シンタックスハイライト足しませんか?」という提案が何度かあったがどれも断られているようだった。 議論の様子 golang-nutsというGoogle Groupsのグループ (誰でも参加できる) で2012年にGo Playgroundにシンタックスハイライト足しませんか?という提案のスレがあった。 Rob Pike氏なども登場している。ざっくり読んだ感じ、「Go言語はシンタックスハイライトなくても十分読めるし不要だろう」みたいな流れ。 groups.google.com Redditでも同じこ
• Use your text editor in the browser Whenever you’re writing more than a little snippet of code anywhere on the web, activate GhostText to open your preferred text editor and enjoy your own development environment. Installation GhostText is a browser extension that connects to your editor via its own extension. Install both extensions and, if necessary, start the GhostText server in the editor’s
プログラミングでサクセス…!!!みたいなCMをやっているのをよく見るようになった。 一昔前はブログのアフィリエイト収入で一発当てるぞ、とか、YouTuberとなって一発当てる、その前はビットコイン、ゴルフ券、チューリップ…みたいに、その時どきの盛り上がりがある。 盛り上がるのはいいのだけど、そのあとで盛り下がったときに、いまさら〇〇をやるなんて時代遅れ、みたいに、誰もやらなくなると困ると思って、ビットコインはだれも買わなくてもいいんだけど、プログラミングをやろうとする人が減ると困りそう。 ふだん仕事していて、なんでこんなにやることがあるのか?それは一部の人類が全人類分のプログラムを書いているためであり、人類皆が自分に必要なくらいのプログラムを書けるようになってほしい、と思うことがあって、プログラミングのリテラシが向上することは賛成だけど、プログラミングできればただちにメッチャ儲かるわけでは
Rust has taken the programming language world by storm. Since its 1.0 release in 2015, it has been one of the most loved programming languages with a loyal following of developers and contributors. To learn why this language is favored so much between developers, we have started a new series on Rust in production. In it, we’ll interview people that have used Rust for significant projects: apps, se
おわり 二つの画像のうち、どっちの方がエッチかを選んでください。 世代交代を経るごとに、だんだんとエッチな画像が表示されるようになるはずです。 Choose the lewder one, and you can make them more lewd. You will win when the AdSense on this site is stopped by Google because of "Sexually explicit content". ENGLISH よりエッチな画像を作るために、 ぜひ色んな人に広めてください。 ツイート ・展覧会ページでこれまでの画像を公開しています。 詳しい説明 スポンサーリンク みんなの好みを学習させて、「遺伝的アルゴリズム」によってエッチな画像を自動で作るためのシステムです。 遺伝的アルゴリズムとは、あるデータを目標に近づけるために使われる
こんにちは! id:yutailang0119 です。 今年も無事 はてなエンジニアAdvent Calendar 2020 を完走することができました! これまでのまとめ はてなエンジニア Advent Calendar 2019完走しました! - Hatena Developer Blog はてなエンジニア Advent Calendar 2018完走しました! - Hatena Developer Blog 表彰 最多ブックマーク賞 今年の最多ブックマークエントリは、12/06担当 id:stefafafan の stefafafan.hatenablog.com でした! (2020/12/29現在) 🎊おめでとうございます🎊 感想戦 今回は id:KGA id:nabeop id:onk id:shallow1729 id:yutailang0119 の5人で、感想戦をしてい
2020年12月25日、セールスフォースドットコムは一部製品、または機能を利用するユーザーにおいて、Salesforce上の組織の一部情報が第三者より閲覧できる事象が発生していると案内を掲載しました。また、12月に入り外部への情報流出の可能性を発表した楽天、PayPayがこの影響を受けたユーザーに含まれていたことが報じられています。ここでは関連する情報をまとめます。 設定不備で第三者からの情報閲覧事象が発生 www.salesforce.com セールスフォースドットコムが公開したリリースをまとめると以下の通り。 影響を受ける対象機能、製品はExperience Cloud(旧 Community Cloud)、Salesforceサイト、Site.com。 既に当該機能、製品利用組織において第三者による閲覧行為が発生している。 脆弱性起因の問題で生じた事象ではなく、ゲストユーザーに対する
皆様, メリークリスマス! この記事は, 「Perl Advent Calendar 2020」の25日目の記事です. qiita.com 昨日は, id:hitode909 さんの「Perlアプリケーションの依存モジュールの更新についてWEB+DB PRESS vol.120のPerl Hackers Hubに寄稿しました」でした. blog.sushi.money さて, 本題です. Perlにおいて, HTTPリクエストを送る時のデファクトスタンダードと言えばLWP::UserAgentではないでしょうか. metacpan.org LWP::UserAgentには, timeoutというオプションがあります. 2020年12月25日現在の最新版は6.50ですが, このバージョンではtimeoutのデフォルトは180秒となっていて, この場合HTTPリクエストを送って180秒経過する
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く