Skip to content

Commit

Permalink
deploy: a266c2b
Browse files Browse the repository at this point in the history
  • Loading branch information
ramsayleung committed Dec 14, 2024
1 parent fa8b347 commit 585f274
Show file tree
Hide file tree
Showing 32 changed files with 32 additions and 32 deletions.
2 changes: 1 addition & 1 deletion en/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion en/page/2/index.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<!doctype html><html lang=en dir=auto><head><meta name=generator content="Hugo 0.120.4"><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>In Pursuit of Hubris</title>
<meta name=keywords content="Blog,Software,Life,Enginering"><meta name=description content="In Pursuit of Hubris"><meta name=author content="Ramsay Leung"><link rel=canonical href=https://ramsayleung.github.io/en/><meta name=google-site-verification content="XYZabc"><meta name=yandex-verification content="XYZabc"><meta name=msvalidate.01 content="XYZabc"><link crossorigin=anonymous href=/assets/css/stylesheet.3d10f26c6b18e09ce1513987c692d1b5c576d18f039138546633643284448f11.css integrity="sha256-PRDybGsY4JzhUTmHxpLRtcV20Y8DkThUZjNkMoREjxE=" rel="preload stylesheet" as=style><link rel=icon href=https://ramsayleung.github.io/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://ramsayleung.github.io/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://ramsayleung.github.io/favicon-32x32.png><link rel=apple-touch-icon href=https://ramsayleung.github.io/apple-touch-icon.png><link rel=mask-icon href=https://ramsayleung.github.io/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://ramsayleung.github.io/en/index.xml><link rel=alternate type=application/json href=https://ramsayleung.github.io/en/index.json><link rel=alternate hreflang=en href=https://ramsayleung.github.io/en/><link rel=alternate hreflang=zh href=https://ramsayleung.github.io/zh/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript><script async src="https://www.googletagmanager.com/gtag/js?id=G-9MG65HQHEL"></script><script>var doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-9MG65HQHEL",{anonymize_ip:!1})}</script><meta property="og:title" content="In Pursuit of Hubris"><meta property="og:description" content="In Pursuit of Hubris"><meta property="og:type" content="website"><meta property="og:url" content="https://ramsayleung.github.io/en/"><meta property="og:image" content="https://ramsayleung.github.io/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E"><meta property="og:site_name" content="Ramsay's Blog"><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://ramsayleung.github.io/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E"><meta name=twitter:title content="In Pursuit of Hubris"><meta name=twitter:description content="In Pursuit of Hubris"><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"In Pursuit of Hubris","url":"https://ramsayleung.github.io/en/","description":"In Pursuit of Hubris","thumbnailUrl":"https://ramsayleung.github.io/favicon.ico","sameAs":["https://github.com/ramsayleung","https://stackoverflow.com/users/5738112/ramsay","https://twitter.com/foobar_ramsay","/en/index.xml"]}</script></head><body class=list id=top><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class=header><nav class=nav><div class=logo><a href=https://ramsayleung.github.io/en/ accesskey=h title="Home (Alt + H)"><img src=https://ramsayleung.github.io/apple-touch-icon.png alt aria-label=logo height=35>Home</a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button><ul class=lang-switch><li>|</li><li><a href=https://ramsayleung.github.io/zh/ title=中文 aria-label=中文>Zh</a></li></ul></div></div><ul id=menu><li><a href=https://ramsayleung.github.io/en/archives/ title=Archives><span>Archives</span></a></li><li><a href=https://ramsayleung.github.io/en/search/ title="Search (Alt + /)" accesskey=/><span>Search</span></a></li><li><a href=https://ramsayleung.github.io/en/categories/ title=Categories><span>Categories</span></a></li><li><a href=https://ramsayleung.github.io/en/tags/ title=Tags><span>Tags</span></a></li><li><a href=https://ramsayleung.github.io/en/about_me title=About><span>About</span></a></li></ul></nav></header><main class=main><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>How To Design A Reliable Distributed Timer</h2></header><div class=entry-content><p>1 Preface I have been maintained a legacy distributed timer for months for my employer, then some important pay business are leveraging on it, with 1 billion tasks handled every day and 20k tasks added per second at most.
<meta name=keywords content="Blog,Software,Life,Enginering"><meta name=description content="In Pursuit of Hubris"><meta name=author content="Ramsay Leung"><link rel=canonical href=https://ramsayleung.github.io/en/><meta name=google-site-verification content="XYZabc"><meta name=yandex-verification content="XYZabc"><meta name=msvalidate.01 content="XYZabc"><link crossorigin=anonymous href=/assets/css/stylesheet.3d10f26c6b18e09ce1513987c692d1b5c576d18f039138546633643284448f11.css integrity="sha256-PRDybGsY4JzhUTmHxpLRtcV20Y8DkThUZjNkMoREjxE=" rel="preload stylesheet" as=style><link rel=icon href=https://ramsayleung.github.io/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://ramsayleung.github.io/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://ramsayleung.github.io/favicon-32x32.png><link rel=apple-touch-icon href=https://ramsayleung.github.io/apple-touch-icon.png><link rel=mask-icon href=https://ramsayleung.github.io/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://ramsayleung.github.io/en/index.xml><link rel=alternate type=application/json href=https://ramsayleung.github.io/en/index.json><link rel=alternate hreflang=en href=https://ramsayleung.github.io/en/><link rel=alternate hreflang=zh href=https://ramsayleung.github.io/zh/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript><script async src="https://www.googletagmanager.com/gtag/js?id=G-9MG65HQHEL"></script><script>var doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-9MG65HQHEL",{anonymize_ip:!1})}</script><meta property="og:title" content="In Pursuit of Hubris"><meta property="og:description" content="In Pursuit of Hubris"><meta property="og:type" content="website"><meta property="og:url" content="https://ramsayleung.github.io/en/"><meta property="og:image" content="https://ramsayleung.github.io/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E"><meta property="og:site_name" content="Ramsay's Blog"><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://ramsayleung.github.io/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E"><meta name=twitter:title content="In Pursuit of Hubris"><meta name=twitter:description content="In Pursuit of Hubris"><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"In Pursuit of Hubris","url":"https://ramsayleung.github.io/en/","description":"In Pursuit of Hubris","thumbnailUrl":"https://ramsayleung.github.io/favicon.ico","sameAs":["https://github.com/ramsayleung","https://stackoverflow.com/users/5738112/ramsay","https://twitter.com/foobar_ramsay","https://www.linkedin.com/in/ramsayleung/","/en/index.xml"]}</script></head><body class=list id=top><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class=header><nav class=nav><div class=logo><a href=https://ramsayleung.github.io/en/ accesskey=h title="Home (Alt + H)"><img src=https://ramsayleung.github.io/apple-touch-icon.png alt aria-label=logo height=35>Home</a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button><ul class=lang-switch><li>|</li><li><a href=https://ramsayleung.github.io/zh/ title=中文 aria-label=中文>Zh</a></li></ul></div></div><ul id=menu><li><a href=https://ramsayleung.github.io/en/archives/ title=Archives><span>Archives</span></a></li><li><a href=https://ramsayleung.github.io/en/search/ title="Search (Alt + /)" accesskey=/><span>Search</span></a></li><li><a href=https://ramsayleung.github.io/en/categories/ title=Categories><span>Categories</span></a></li><li><a href=https://ramsayleung.github.io/en/tags/ title=Tags><span>Tags</span></a></li><li><a href=https://ramsayleung.github.io/en/about_me title=About><span>About</span></a></li></ul></nav></header><main class=main><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>How To Design A Reliable Distributed Timer</h2></header><div class=entry-content><p>1 Preface I have been maintained a legacy distributed timer for months for my employer, then some important pay business are leveraging on it, with 1 billion tasks handled every day and 20k tasks added per second at most.
Even though it’s old and full of black magic code, but it also also have insighted and well-designed code. Based on this old, running timer, I summarize and extract as this article, and it wont include any running code(perhaps pseudocode, and a lot of figures, as an adage says: A picture is worth a thousand words)....</p></div><footer class=entry-footer><span title='2021-08-05 09:19:36 +0000 UTC'>August 5, 2021</span>&nbsp;·&nbsp;9 min&nbsp;·&nbsp;1845 words&nbsp;·&nbsp;Ramsay Leung</footer><a class=entry-link aria-label="post link to How To Design A Reliable Distributed Timer" href=https://ramsayleung.github.io/en/post/2021/how_to_design_a_reliable_distributed_timer/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Let's make everything iterable</h2></header><div class=entry-content><p>Iterate through pagination in the Rest API
1 Preface About 4 months ago, icewind1991 created an exciting PR that adding Stream/Iterator based versions of methods with paginated results, which makes enpoints in Rspotify more much ergonomic to use, and Mario completed this PR.
In order to know what this PR brought to us, we have to go back to the orignal story, the paginated results in Spotify’s Rest API.
Expand Down
2 changes: 1 addition & 1 deletion zh/about_me_zh/index.html

Large diffs are not rendered by default.

Loading

0 comments on commit 585f274

Please sign in to comment.