Go– tag –
-
private-isuのベンチマーカーをLambdaで実行する仕組みを公開しました
開発こんにちは、PR TIMESでバックエンド開発をしている宮崎(@sucalul)です。 先日、private-isuのベンチマーカーをLambdaで実行する仕組みを公開したので、そちらの紹介をします。 【公開リポジトリ】 https://github.com/PRTIMES/private-isu-bench-lambda 使い方についてはGitHubのREADMEを参照してください。 https://github.com/PRTIMES/private-isu-bench-lambda?tab=readme-ov-file#使い方 【背景】 private-isuのベンチマーカーはREADMEにEC2を起動する方法が書いてありますが、Lambdaで立ち上げる方が比較的... -
AWSとGo言語を活用して、プレスキット一括ダウンロードを構築しました
開発こんにちは!開発本部のエンジニアのトゥ(codyzard)です。 今回は数ヶ月前にリリースされたプレスキット一括ダウンロードの機能を話したいと思います。 【背景】 2022年2月にプレスキット機能をリリースしました。興味があれば以下の記事を参考してください。 https://developers.prtimes.jp/2022/03/09/react-presskit/ https://developers.prtimes.jp/2022/03/04/upload-files-using-s3-and-lambda/ しかし、それまでのプレスキットでは1つ1つの素材しかダウンロードできませんでした。いくつも欲しい素材があ... -
PR TIMES’s Transformation of Ranking and Analytics Systems with Enhanced Logging
開発Hello, I'm Duc, responsible for the optimization of our press release access logging system. I'm excited to share the transformative journey we embarked on, moving from a traditional log system that recorded every access in our database to a more streamlined and effective approach. 【Background】 Let's begin by examining the challenges we encountered with our previous logging system. Initially, it was a basic setup: each view of a press release page triggered the addition ... -
デバイス別アクセスログの集計処理をLambdaに置き換えました
開発こんにちは、PR TIMESでバックエンドエンジニアをしている宮崎(@sucalul)です。 今回はPR TIMESのデバイス別アクセスログの集計処理をLambdaに置き換えた取り組みを紹介します。 【はじめに】 PR TIMESではアクセスログを複数の機能で利用していますが、 アクセスログの量が多く処理が重い bot判定が処理によってバラバラ などの問題がありました。 これらを解決するための第一弾としてデバイス別アクセスログの改善を行いました。 デバイス別アクセスログ集計の機能は元々、td-agentのプラグイン(Ruby実装)で処... -
SendGridとAWSを使って、メールを送信するアプリケーションを作成しました
開発こんにちは、普段PR TIMES STORY(以下STORY)の開発リーダーをしている岩下(@iwashi623)です。 今回はSQS とLambdaを使って、AWS Fargate上で動作しているLaravelからメールを送信する基盤を作成したことについて書いていきます。 【なぜ作るのか】 2/21にPR TIMES Webクリッピングの正式版がリリースされました。 https://prtimes.jp/main/html/rd/p/000001256.000000112.html 正式版をリリースするにあたって、ユーザーにメールを送信したいという要件が生じました。PR TIMES WebクリッピングはFargate上にデプ... -
デジタル創作同好会traPさんと社内ISUCONイベントを開催しました
開発こんにちは、22新卒で、PR TIMES開発本部でバックエンド開発をしている宮崎です。 先日、デジタル創作同好会traPさんと、社内ISUCONイベントを開催しました。今回は、その準備で作成したLambda関数の紹介をします。 「ISUCON」は、LINE株式会社の商標または登録商標です。 【当日の様子】 会社にtraPの方々をお招きし、オフラインで行いました。traPからは20名以上参加いただきました。今回使用した問題はこちらです。 https://github.com/catatsuy/private-isu 最終的に30万点を超えたチームが2つあり、398,912点... -
サムネイル画像をPDFの1ページ目から自動生成する
開発こんにちは!開発本部のレーホアントゥです。 先日PR TIMESがサムネイル画像をPDFの1ページ目から自動生成し、その画像が資料とガイドラインのサムネイルとして使用されるという新機能をリリースました。なので、今回PDFの1ページ目からサムネイル画像を作成する方法を紹介したいと思います。 【やりたいこと】 現在、プレスキットの編集画面ではロゴ、画像、資料などのプレスキットの素材となるファイルをアップロードできる機能があります。ロゴ、画像はそれぞれの画像ファイルを変換したサムネイルが表示され... -
ゼロから始めるGo言語とAWS Lambdaを使って、サーバーレスアプリを作成する話
開発こんにちは、2021年の頭にPR TIMES に入社し、バックエンドエンジニアをしているベトナム国籍メンバーのズンです。 以前は主にPHP言語で開発をしていますが、入社してから様々なことを勉強になりました。その中でAWSは学んだことの1つです。 現在、PR TIMESではSalesforceが社内業務の一部に利用されています。社内の人間が手動で対応している業務が多くありましたが、ご利用企業が増加してきたため、手数がかかってきました。または、社内で情報が分散してしまっているのを集約することで、よりよい顧客サポート... -
ハッカソンのAPIをGoへフルスクラッチしました
開発こんにちは、2022新卒で PR TIMES に入社し、バックエンドエンジニアをしている宮崎です。 先日行われたハッカソンに向けてAPIをフルスクラッチしたのでやったこと共有します。 【はじめに】 PR TIMESでは新卒向けにAPIを提供してハッカソンを行なっています。 優秀者は即内定!23・24新卒向けハッカソン「PR TIMES HACKATHON 2022 Summer」8月8-9日開催 既存のAPIをGoへフルスクラッチした理由は以下の2つです。 エンドポイントから取得できるリソースが推測できない、パスパラメータで指定する必要のないものが... -
S3 を活用して工数を削減させた、ファイルアップロード機能の設計と実装
開発こんにちは、開発本部・バックエンドエンジニアの江間です。 先日、 PR TIMES の新規機能としてプレスキット機能の提供が開始されました。 プレスキット機能では、画像コンテンツや PDF などのファイルのアップロード・ダウンロード、サムネイル画像の自動生成など機能を提供しています。 PR TIMES のソースコードはレガシーな PHP で書かれており、少しの機能追加であっても工数が増大したり、これまで通りに実装していくと技術的負債が増えてしまう恐れがありました。また、アップロードされるファイルの容量が...
1