2022年4月28日、Google Cloudが拡大を続けるデジタルメディアとオンラインエンターテインメント業界向けの新型コンテンツデリバリーネットワーク(CDN)である「Media CDN」を発表しました。 Media CDN, modern extensible platform for immersive experiences | Google Cloud Blog https://cloud.google.com/blog/products/networking/introducing-media-cdn これまでにもGoogle Cloudは静的なウェブサイトやスクリプトなどの配信に特化した「Cloud CDN」というCDNサービスを提供してきましたが、新たに発表されたMedia CDNは「YouTubeと同じインフラを活用している」という点が最大の特長。YouTubeのインフ
ブログに画像を貼るのに、保存してリサイズして名前変えて、アップロードして… という作業がめんどくさい。 なので、Gyazo を使っていた。でも、Gyazo を使い続けるのもなんかアレなんで、代替の手段を考えていた。 macOS Monterey に「ショートカット」が入ったので Automator より触りやすいと試していたら、いつの間にか「Gyazo もどき」ができた。 バックエンドに S3、フロントの API サーバー に Cloudflare Workers を使った。 これ、なかなか面白いので紹介する。 デモ 右上のメニューバーより起動できる。 macOS のショートカット 最初に macOS の「ショートカット」アプリをどのように構成しているかを説明する。以下の通りである。 インタラクティブにスクリーンショットを撮る スクリーンショットを1000 x 自動高さ設定 のサイズにサイ
水樹奈々さん結婚おめでとうございます もう言いたいことは一行目で言いました。お疲れさまです。大村です。 本日は弊社の16周年の記念日ですが、もう一つ、12時になって、水樹奈々さんのblogとファンクラブサイトにて、結婚のご報告がありました。 「いつも応援してくださる皆様へ - 水樹奈々 公式サイト NANA PARTY」 わー、おめでとうございます。 かれこれシスプリの亞里亞ちゃん前後からのファンなので、20年近くになるファンですが、今日ほどめでたい日もありません! お相手の音楽関係のお仕事をされている旦那さん、羨ましい!! 正確には入籍されたのが昨日ということですが、発表するのが7月7日のまさに"奈々"の日ということで、この名前を大事にしていることがわかります。 そこも大好きなところです。 今日はBGMに"7月7日"を聴きながら、じーんと涙を流しますよ!!(この曲の上松美香さんのアルパも
熱狂の卒業イベントから半年、みんな大好き元AWSの亀田治伸さんがCloudflareのエバンジェリストとして戻ってきた。久しぶりのインタビューは、転職した経緯やCloudflareのサービスや設計思想、ゼロトラストの定義、コミュニティの話まで多岐に及んだ。(インタビュアー ASCII編集部 大谷イビサ 以下、敬称略) ラストワンマイルの課題って意外と解消されていない 大谷:まずは改めてAWSからCloudflareに転職した経緯を教えてください。 亀田:AWSに7年半いて、後半5年はエバンジェリストをやらせてもらいました。クラウドは世の中を大きく変え、これから必須の存在になると私は確信しています。一方で、クラウドに面白さを感じていた人たちがそれなりにシニアになり、イビサさんが先日書いていたようにある程度のイノベーションは出尽くしてきたのも事実です。 こういう時代になり、AWSでも、Goog
CDNの文脈でいうエッジコンピューティングはフロントエンドのものとされることが多い気がするけど、そうじゃない。フロントエンドの技術を使ったバックエンドである。 フロントエンド? ユーザーに近いところで実行されるという意味ではフロントエンドかもしれない。あと、VercelのNext.jsのように、フロントエンドフレームワークのファンクションがエッジで動くからフロントエンドでしょというのはある。そしてエッジのファンクションはたいていフロントエンドで使われているJavaScriptもしくはTypeScriptで書く。そうするとツールチェーンも、例えば「Vite」と聞いてそれが何であるか?を答えられる人はフロントエンドやってる人の方が多いだろう。 2つのユースケース エッジには2つのユースケースがある。 CDNの機能を拡張する。オリジンありき。 サーバーレスコンピュート。オリジンそのものになる。
先日紹介した「FlowBite」(紹介記事)を使用して、Tailwind CSSでUIコンポーネントを実装する方法を紹介します。 Tailwind CSSのユーティリティクラスで実装された基本コンポーネントがFlowBiteに用意されているので、初めての人でもコピペで簡単に実装できます。 Tailwind CSS Components Tutorial – How to get started with FlowBite by Zoltán Szőgyényi 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに FlowBiteの準備 FlowBiteとTailwind CSSをCDN経由でインクルードする方法 FlowBiteでコンポーネントを探す FlowBiteのコンポーネントを実装する方法 Tailwind CSS
「実は動的コンテンツとか静的コンテンツとか深く考えずにCloudFrontを挟んだ方が安くなるのでは」と思い、計算してみたところ良さげだったのでご紹介します。 ども、もこ@札幌オフィスです。 AWSの通信利用料を調べる機会があり、アウトバウンド通信のコスト削減をするために試行錯誤していたのですが、「実は動的コンテンツとか静的コンテンツとか深く考えずにCloudFrontを挟んだ方が安くなるのでは」と思い、計算してみたところ良さげだったので、簡単な内容とはなりますがご紹介します。 ※本記事でのアウトバウンドとはCloudFrontを経由出来る通信の事であり、EC2からどこかへファイルをアップロードするなどの通信は対象外となりますのでご注意ください。 TL;DR EC2、ELB、S3のインターネットへのアウトバウンド通信は $0.114〜$0.084 per 1GB ※1 EC2、ELB、S3
作ったものはここに動いているので、ちょっとでも見ていってくれると嬉しい。 d1ch.cc 作った動機 この記事で、Cloudflare d1というサービスが開発されつつあることを知った。 zenn.dev 簡単に言うと、Cloudflare WorkersというCDNのエッジノードで動くFunctionサービスがあって、Cloudflare d1はそこにSQLiteも配置しちゃうぜ大作戦。 SQLiteは単なるファイルをDBとして使う技術であり、常駐するサーバープロセスが必要ないので、他のミドルウェアに比べるとかなり安くなりそう。安価なDBサービスを探していた自分も興味を持って色々と試していた。 大規模に使う場合、ホットスポットが予想して、アクセスが少ないものは他のストレージに退避しつつ、部分的に乗せる、みたいな工夫が必要になるかもしれません。 ただこれも D1 で sqlite テーブル
Cloudflareの月額200ドル(約3万1000円)のBusinessプランを何年間も契約していたユーザーが、突然Cloudflareから「24時間以内に12万ドル(約1880万円)支払ってEnterpriseプランにアップグレードしなければドメインを削除する」と要求され、実際に契約が解除されて全ての設定が削除されてしまったとブログに投稿しました。 Cloudflare took down our website after trying to force us to pay 120k$ within 24h https://robindev.substack.com/p/cloudflare-took-down-our-website ブログを投稿したロビン・デヴ氏は月間アクティブユーザー数が400万人を超える大規模なオンラインカジノのシステム運用エンジニアです。当該カジノサイトでは
AWS News Blog Introducing CloudFront Functions – Run Your Code at the Edge with Low Latency at Any Scale With Amazon CloudFront, you can securely deliver data, videos, applications, and APIs to your customers globally with low latency and high transfer speeds. To offer a customized experience and the lowest possible latency, many modern applications execute some form of logic at the edge. The use
Cloudflare、CDNエッジでサーバレスなSQLiteを提供する「Cloudflare D1」正式リリース。非同期レプリケーションによる分散データベース機能も Cloudflareは、これまでベータ版として提供してきたSQLiteベースのデータベースサービス「Cloudflare D1」の正式サービス化を発表しました。 D1, Cloudflare’s SQL database, is now generally available. With new support for 10GB databases, data export, and enhanced query debugging, we empower developers to build production-ready applications with D1 to meet all their SQL needs.
はじめに この記事は、Cloudflare が提唱する Fragment Piercing (フラグメント・ピアシング) の記事(Cloudflare Workersによるマイクロフロントエンドの段階的な採用)を読んだ筆者が、そこから得たアイデアとそれをPoC(概念実証)している「コンポーネント配信システム」についてドキュメント化したものである。 この記事で取り上げられているシステムなどは、まだ実用段階に達していないものが多く含まれている。 デザインシステムとコンポーネントの配信 近年、デザインシステムを構築したり公開する企業や組織が増えている。 「デザインシステム」の価値は、Storybookのドキュメントに次のように示されている。 デザインシステムは複数のプロジェクトを横断してチームが複雑で、丈夫で、アクセシビリティの高いユーザーインターフェースを構築するための再利用可能な UI コン
熱戦が続くサッカー・ワールドカップ(W杯)カタール大会で、全64試合を無料で生中継するインターネットテレビサービス「ABEMA(アベマ)」。その中継を支えているCDN(コンテンツ・デリバリー・ネットワーク)を提供しているのが米国Akamaiの日本法人、アカマイ・テクノロジーズだ。連日の大量トラフィックをさばく取り組みを、同社のシニアプロダクトマネージャー伊藤崇氏に日本代表第3戦を直前に控えたタイミングで緊急にうかがった。 記録的な数字に跳ね上がる「記録的な数字に跳ね上がっています」。世界的なイベントに携わっているにもかかわらず、落ち着いた低音ボイスで伊藤氏は答えた。「世界的なサッカーイベント」の具体的なアクセス数は大会終了後にまとめて発表する予定で、途中経過は明らかにできない。ただ6月に東京ドームで行われた格闘技イベントをABEMAが有料配信した際に観測した配信トラフィックは、最高値で毎秒
本記事はCloudflareアドベントカレンダーの10日目の記事です。 Cloudflare Advent Calendar 2022 の記事一覧 10日目は現在アルファ版として公開されているCloudflare D1についての性能検証の記事です。 Cloudflare D1は一言でいうと「エッジロケーションで利用できるSQLiteベースのリレーショナルデータベース」です。 CloudFlareのグローバルネットワークを活用して、データの読み取り専用のクローンがエッジロケーションに自動的に配置されるとのことなので、なんか凄そうです! 従来CloudFlareでのデータストアの選択肢としては、 オブジェクトストレージとしてのCloudFlare R2、 キューバリュー形式データベースとしてのCloudFlare KVなどがありましたが、 CloudFlare D1の登場によって、より多くのユ
高度診断部アプリケーションセキュリティ課の山崎です。 弊社エンジニアの名古屋と山崎がRuby on RailsのActive Storageの脆弱性CVE-2024-26144を報告しました。 本脆弱性はRailsの5.2.0から7.1.0のバージョンに影響するもので、お使いのRailsのバージョンが最新でない場合にはアップデートを推奨します。 本記事では本脆弱性の注意点と、関連してCookieのキャッシュに関する調査内容を紹介します。 TL;DR ・ Set-Cookieヘッダがキャッシュされると別人ログイン問題が発生する ・ RailsのActive StorageでSet-Cookieヘッダがキャッシュ可能な設定であった(CVE-2024-26144) ・ Nginx(+ Passenger), Apache(+ mod_cache)等のキャッシュ機構と合わせて利用すると実際に事故が
こんにちは、Web チームの井手です。今日は私たち Web チームが作っている SSR フレームワーク(以下 FW)にについて紹介します。 記事を書くモチベーション 私たちのメインプロダクトである日経電子版においては k2 という自作 SSR 基盤を 2020 年から運用しています。SSR FW といえば多くの方が Next.js を想起すると思いますが、私たちは自作しています。一方で最近は Next.js の進化が凄まじく、自作 SSR 勢としても意識せざるを得なくなっています。もしかしたら「あぁ Next.js で作っておけばよかった」と思う時が来るかもしれません。特に k2 を保守する際には Next.js では実現できない機能を実現するために様々な手法や工夫を編み出していましたが、Next.js の進化に伴ってその必要性はだんだん減ってきているのを実感しています。そのためいつか N
Layer0というJamstackプラットフォームを試してみた記事です。 Jamstackプラットフォームが何かは表現しにくいですが、Netlify、Vercel、Cloudflare PagesみたいなSPAなアプリケーションとかをホスティングしてくれるサービスです。 Cloudflare Pages・Vercel ・Netlify の違いや使い分けをまとめる Layer0はMoovweb XDNという名前のプロダクトでしたが、2021年4月にLayer0へリブランディングしています。 Moovweb is officially Layer0! 📝 XDN = Experience Delivery Network Layer0は、Netlify、Vercel、Cloudflare PagesのようにSPAアプリケーションをホスティングできるプラットフォームです。 他のプラットフォーム
こんにちは、クックパッドでエンジニアをやっている @morishin です。入社してわりと長い間 iOS アプリやそのバックエンドの開発を中心にやってきましたが、最近は専らウェブフロントエンドとその基盤をいい感じにするというのをやっています。先日クックパッドウェブサイトのレシピページの OGP 画像を素敵に刷新したのでそのお話をしたいと思います。 ※ ここで OGP 画像と呼んでいるのは Open Graph Protocol で定義されている og:image プロパティに指定する画像のことです。 ※ OGP 画像と呼んでいますが厳密には今回変更したのは Twitter Card (twitter:image) 用の画像のみなので、その他の SNS に表示される画像 (og:image) は変わっていません。 できたもの これまではレシピ作者さんがアップロードされた料理写真を単にクロップ
※ Fastlyの公式イベント「Yamagoya 2021」で発表した内容を再編した記事です。 今回はFastly Image Optimizerを活用したnoteでの画像配信効率化についてお話します。よろしくお願いします。 note株式会社の和田と申します。 2019年4月にnoteに入社し、現在は法人向けサービスであるnote proの基盤システム開発のチームリーダーを担当しています。 Fastly導入前の画像配信における3つの課題noteでは画像配信に多くの課題を感じていましたが、エンジニアの人数が少ない時代もあり、なかなか手がつけられていないのが現状でした。 まずは、Fastly導入前にどのような問題があったのか、画像配信における3つの課題について説明していきます。 1つ目の課題は、アプリケーションサーバーへの負荷です。 noteはサーバーサイドをRailsで実装しており、Carr
Cloudflare、Amazon S3互換のオブジェクトストレージ「Cloudflare R2」のオープンベータを開始。10GB以下ならずっと無料 Cloudflareは、CDNエッジで使えるAmazon S3互換のオブジェクトストレージ「Cloudflare R2」のオープンベータを開始したと発表しました。 Cloudflare exists to help build a better Internet. Today, the Internet gets what it deserves: R2 is now in open beta. https://t.co/2d83vA0gnv #PlatformWeek — Cloudflare (@Cloudflare) May 11, 2022 Cloudflare R2は、Amazon S3互換のAPIと、同社のサーバレス基盤であるCl
「出版4社、米IT企業を提訴へ 漫画の海賊版データを配信」というニュースがありました。出版社のプレスリリースを見るとより詳しい内容がわかります。集英社、講談社、小学館、KADOKAWAが米Cloudflare社を著作権侵害による約4億円の損害賠償(一部請求)および差し止めを求めて東京地裁に提訴したという話です。 クラウドフレア社は、CDN(コンテンツ・デリバリ・ネットワーク)サービスを主力事業とする企業です。CDNは、ウェブ・コンテンツを利用者の近くでキャッシングすることで性能を向上するサービスであり、大規模なコンテンツ配信サイトではほぼ不可欠となっています。同種のサービスとしては、AkamaiやAmazonのCloud Front等が有名です。クラウドフレアは、無料プランを提供していることもあり、トラフィック量ベースの市場シェアはCDN市場で最大とのことです。 冒頭で挙げた出版社のプレス
Cloudflare Workersが話題になって「CDNのエッジでSSRできるのすごくない?」ってなりがちです。 たしかにものすごいのですが、Cloudflare WorkersはSSRをするためだけのものではありません。 SSGしたページに機能を追加したり、CDNのバックエンドのRequest/Responseのハンドリングに使えます。 今回はCloudflare PagesというSSGのサービスでWorkersを使えることを紹介しつつ、WorkersのSSR以外のユースケースについて考えてみます。 SSRできると嬉しい Cloudflare Workersが話題になったのは、先日「D1」がリリースされる以前にもありました。 「RemixがCloudflare WorkersをサポートしてSSRできる!」って件もその1つです。 こちら、Zennのcatnoseさんの記事のインパクトが大
I’ve used Google Fonts in prototypes and in 10M+ MAU products. It’s incredibly easy to get started with and provides an amazing font discovery. That’s also why it’s currently still used on over 42M websites! This convenience has its price: Performance. Many have already pointed out the cost of multiple requests. If you want the remaining speed boost, then you’re best off downloading your used Goog
トラベルブックでは CDN に Fastly を使っています。 その Fastly が提供する Compute@Edge が一般でも使えるようになりました。今回は Compute@Edge とはなにか、といった概要と、実際に「Slack スラッシュコマンド echo 」を作ってみた件、それで分かったことを紹介してみたいと思います。 Compute@Edge とは? Compute@Edge とは、Fastly の CDN エッジでスクリプトを実行できる環境のことを言います。 去年の 11 月に一般ユーザーに開放されました。 誰もが無料で Compute@Edge を試せるチャンス | Fastly Compute@Edge は一般的に「エッジコンピューティング」と呼ばれるもので、同様には以下があります。 Cloudflare Workers Vercel Edge Functions AW
Firebase HostingがNext.jsのデプロイに対応した[1] と聞きつけ、Next.jsビルドツール好き[2] [3] なので様子を見てきました。 のリポジトリを中心に調べてみます。 Firebase CLI framework-awareness とは フレームワークサポートを付与するためのFirebase CLI のアドオン。 Firebaseプロジェクトの構成に応じて、Google Cloudのリソースを構築する。 現在Next, Nuxt2/3, AngularをサポートしていてCloud Functionsにこれからのフレームワーク機能をサポートするエンドポイントを自動でデプロイしてくれる。 内部アーキテクチャ next export で .next/ ディレクトリができる firebase-frameworks.build() がプロジェクト構造を解析してフレーム
メルカリ Shops の開発 vcl, python, golang, containers, typescript, etc. が入っている monorepo で開発が行われている。 なので、あまり専門性はあってもどの領域でも開発を行う。 メルカリアプリ上で動いているため、 webview がベースとなりパフォーマンスは普段以上に求められている。 技術スタックはこちらを参照 ユーザーへの UX を下げないために。。 First Meaningful Paint を速くするSkeleton などでフィードバックを適切に行う => とりあえず速く結果を返却すればよい 結果を速く返すために考えること 共通な結果はすべてキャッシュし、CDN などを使い近くに置く極力、ユーザーからのアクセスを origin まで到達させない常に新鮮な結果を近くに保持することにより、上記を満たせるようにする =>
Cloudflare Workers Cloudflare Workersのようなサーバーレスなコンピューティングプラットフォームとしてここ数年活発な「エッジサーバーでプログラムを実行する環境」(呼び方が定まらないので一旦Edge Functionsとする)でアプリケーションを作る*1とブラウザが通信する先にもう1つブラウザが存在するような妙な感じを覚えていた。 例えばNext.jsのAPI Routesなら書いたコードはNode.jsで動くので頭をサーバーサイドモードにすればいいが、Cloudflare Workersで動くエンドポイントを書く時はそうでない…… おまえ、ブラウザなのか? みたいな でもよく考えたらこれらのプラットフォームはSpiderMonkeyやらV8やらのブラウザと同じJavaScriptエンジンを組み込んだ実行環境を持っていて、APIも環境の制限(TCP接続とかフ
Webサイトのホスティングおよびセキュリティのプロバイダーである米Cloudflareは9月3日(現地時間)、オンラインフォーラムのKiwi Farmsへのサービス提供を停止したと発表した。「Kiwi Farmsの特定の標的型脅威が過去48時間でエスカレートしており、前例のない緊急事態と人命への差し迫った脅威があると確信している」ため。 本稿執筆現在、Kiwi FarmsのWebサイトを開こうとすると以下のようなメッセージが表示される。 Cloudflareは、Kiwi Farmsに提供しているのはセキュリティサービスのみであるため、Kiwi Farmsがサイトを他のプロバイダーに移せばオンラインに戻る可能性があるとしている。 Kiwi Farmsは、オンラインフォーラム8 chanの元管理者、ジョシュア・ムーン氏が2013年に立ち上げたオンラインフォーラム。LGBTQIA+の人々に対する
先日、Next.jsのISR(Incremental Static Regeneration)について書きました。 ISRは非常に強力な機能なのですが、セルフホスティングでNext.jsを動かす場合には色々と使うのが難しかったりします。この記事ではその理由とCDNを使ってISRと似たような挙動を実現する方法を紹介します。 Next.jsのISRをVercel以外で動かすのは難しい Vercelは自社でメンテナンスしているNext.jsを簡単にデプロイできることを大きな強みとしています。Vercelにデプロイする場合、ソースコード上で決められた書き方さえすれば、Vercel側の追加設定なしでISRを利用できます。 しかし、Vercel以外のプラットフォームにデプロイするとなると途端に話がややこしくなります。 Next.jsのISRはキャッシュしたHTMLをファイルシステムに書き込む仕様になっ
パフォーマンスの高みを目指せ! CDNのエッジサーバーでSSR - CloudflareでViteを動かす手順 ウェブサイトの高速化はあらゆるウェブ制作者の悲願です。1ミリ秒でも早くコンテンツを届けるために、エンジニアたちは血と汗と涙を流します。しかし、ウェブサイトの高速化は、ウェブサイトの構成要素を最適化するだけでは実現できません。 大きな課題として次の2つが挙げられます。 コンテンツの転送量が大きく、表示までに時間がかかる 物理的なクライアント/サーバー間の距離が遠く、転送に時間がかかる これらの課題を解決するため、様々な技術が発展してきました。今回はその中でもSSR(サーバーサイドレンダリング)と、CDN(コンテンツデリバリーネットワーク)に注目します。 本記事ではSSRとCDNの概念について解説し、実際にCloudflareというCDNからコンテンツを配信する方法を紹介します。フレ
今回作ったページは下記。 https://haropuro-shuffle.pages.dev/ 元ネタ リポジトリ YuheiNakasaka/haropuro-shuffle 簡単なルーレットアプリ。ルーレットで出た結果をWorkers KVに保存。保存された文字を都度更新して表示(リアルタイムではない)。結果が1000件を超えるとクリアされる。 開発の流れ Workers KVの設定 vite + preactのアプリ開発 Cloudflare Pages/Functionsにデプロイ Workers KVの設定 Workers KVとは PagesやFunctionsから呼び出せるKey-Valuesストア。ここ見るとわかるけど容量制限など結構厳しいのでDBとして本格的に使える感じではない。 設定方法 まずGUIからだとWorkersのページからnamespace(database
Web APIのパフォーマンス向上に「Dynamic Content Storing = DCS」という戦略を考えている。 Web APIに限らず、サーバーサイドで動的に作られるコンテンツ全てへ適応できるものである。 本番環境で運用したわけではないが、実際に動くモックを作ってみた。 背景とともに紹介しよう。 要点 「Dynamic Content Storing」とは「動的コンテンツをエッジのkey-valueストアに保存する」ことを言う。 ユーザーには(初回以外)KVストアから取得したコンテンツを返す。 有効期限もしくはコンテンツの更新をトリガーに新しくコンテンツを生成する。 どんなバックエンドにも適応できる「Incremental Static Regeneration」と考えることができる。 原理は「Stale-While-Revalidate」と同じだがこの場合はコンテンツがより永
Googleフォントはウェブサイト向けに無料でフォントを提供するサービスで、多くのフォントを簡単に利用できるため4600万以上のサイトで利用されています。そのGoogleフォントについて、適切に利用しなければページ読み込みのボトルネックになってしまうとエンジニアのシモン・ウィキ氏が警告しています。 Time to Say Goodbye to Google Fonts https://wicki.io/posts/2020-11-goodbye-google-fonts/ Googleフォントを利用する方法として、ユーザーにGoogleのサーバーからフォントデータを取ってきてもらうCDN方式と、フォントデータを自分のサーバーにアップロードして提供するセルフホスト方式の2つが存在しています。前者のCDNを利用する方法は、ページにコードを埋め込むだけでセットアップでき、非常に簡単なため多くのサ
Why?ProductsServicesSolutionsDevsPartnersResourcesPricing Compute@Edge’s unique isolation sandbox technology enables a fast, secure JavaScript experience as developers continue to enter into the growing serverless computing landscape. SAN FRANCISCO -- JULY 21, 2021 -- Fastly, Inc. (NYSE: FSLY), a global edge cloud platform provider, today announced the availability of JavaScript in Compute@Edge, a
█ 月に ██████████████, ███████████, ███████ から誕生日を祝ってもらったのですが、そのときにマッチングアプリ代金を誕生日プレゼントとしてもらいました。とても生々しいですね。誕生日プレゼント何が欲しいか聞かれたときにふざけて「█████ が欲しい」とか言ってたらまさかこのような形でもらうことになって驚きました。今日は █ ヶ月マッチングアプリをしてみた結果をご報告しようと思います。 マッチングアプリにワクワクまずマッチングアプリに入ると女性がずらっと並んでいて「もしかして結婚相手と出会えるのかもしれない」という気持ちになって、ワクワクしました。とりあえずマッチングのためには魅力的な ███████████ が大事であるとのことで、その場に居合わせた ██████████████, ███████████, ███████ に書いてもらったり、登録する写真
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く