{"type":"rich","title":"\u30e1\u30e2 PerfectQueue\u306f\u3044\u304b\u306b\u30d1\u30fc\u30d5\u30a7\u30af\u30c8\u304b\u3001\u3042\u308b\u3044\u306fRuby\u3068MySQL\u3067\u30b8\u30e7\u30d6\u30ad\u30e5\u30fc\u3092\u4f5c\u308b\u8a66\u307f\u306b\u3064\u3044\u3066 #tdtech","height":"190","description":"PerfectQueue \u30d1\u30fc\u30d5\u30a7\u30af\u30c8\u306a\u5206\u6563\u30ad\u30e5\u30fc worker scheduler consoleapi\u306e\u3084\u308a\u3068\u308a\u3067\u5206\u6563\u30ad\u30e5\u30fc \u30b8\u30e7\u30d6\u30ad\u30e5\u30fc\u3068\u306f first in frist out At-least-once semantics \u6700\u59271\u56de\u5b9f\u884c \u30b8\u30e7\u30d6\u30ad\u30e5\u30fc\u306bRDBMS\u3092\u4f7f\u3046\u3079\u304d\u304b \u4f7f\u3046\u3079\u304d\u306a\u306e\u3067\u306f At-most-once queue\u306e\u30c6\u30fc\u30d6\u30eb\u69cb\u9020 id timeout data created_at created_at\u306f\u5b8c\u4e86\u3057\u305f\u304b\u3069\u3046\u304b\u306b\u3057\u304b\u4f7f\u308f\u306a\u3044\u306e\u3067\u3002\u3002\u3002 data\u3078\u306fJSON\u3092\u5165\u308c\u308b\u3053\u3068 \u30bf\u30b9\u30af\u306e\u53d6\u5f97\u306fSQL\u3067\u3082\u3067\u304d\u308b \u5b9f\u884c\u4e2d\u306f\u5b9a\u671f\u7684\u306b\u30cf\u30fc\u30c8\u30d3\u30fc\u30c8 \u9014\u4e2d\u3067\u843d\u3061\u305f\u3089\u3084\u308a\u76f4\u3057 \u5b8c\u4e86\u3057\u2026","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fwww.shigemk2.com%2Fentry%2Ftdtech_201607_perfect_queue\" title=\"\u30e1\u30e2 PerfectQueue\u306f\u3044\u304b\u306b\u30d1\u30fc\u30d5\u30a7\u30af\u30c8\u304b\u3001\u3042\u308b\u3044\u306fRuby\u3068MySQL\u3067\u30b8\u30e7\u30d6\u30ad\u30e5\u30fc\u3092\u4f5c\u308b\u8a66\u307f\u306b\u3064\u3044\u3066 #tdtech - by shigemk2\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","url":"https://www.shigemk2.com/entry/tdtech_201607_perfect_queue","blog_url":"https://www.shigemk2.com/","provider_url":"https://hatena.blog","provider_name":"Hatena Blog","version":"1.0","categories":["\u52c9\u5f37\u4f1a","Treasure Data"],"image_url":null,"author_name":"shigemk2","width":"100%","published":"2016-07-14 20:17:14","blog_title":"by shigemk2","author_url":"https://blog.hatena.ne.jp/shigemk2/"}