<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Funliday Tech Blog</title>
  <icon>https://techblog.funliday.com/icon.png</icon>
  
  <link href="https://techblog.funliday.com/atom.xml" rel="self"/>
  
  <link href="https://techblog.funliday.com/"/>
  <updated>2024-02-17T09:36:42.846Z</updated>
  <id>https://techblog.funliday.com/</id>
  
  <author>
    <name>Kewang</name>
    
  </author>
  
  <generator uri="https://hexo.io/">Hexo</generator>
  
  <entry>
    <title>把 Web 底層重構，從前後端分離變成 SSR</title>
    <link href="https://techblog.funliday.com/2024/02/16/%E6%8A%8A-Web-%E5%BA%95%E5%B1%A4%E9%87%8D%E6%A7%8B%EF%BC%8C%E5%BE%9E%E5%89%8D%E5%BE%8C%E7%AB%AF%E5%88%86%E9%9B%A2%E8%AE%8A%E6%88%90-SSR/"/>
    <id>https://techblog.funliday.com/2024/02/16/%E6%8A%8A-Web-%E5%BA%95%E5%B1%A4%E9%87%8D%E6%A7%8B%EF%BC%8C%E5%BE%9E%E5%89%8D%E5%BE%8C%E7%AB%AF%E5%88%86%E9%9B%A2%E8%AE%8A%E6%88%90-SSR/</id>
    <published>2024-02-16T08:36:02.000Z</published>
    <updated>2024-02-17T09:36:42.846Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;img</summary>
        
      
    
    
    
    
    <category term="ssr" scheme="https://techblog.funliday.com/tags/ssr/"/>
    
    <category term="seo" scheme="https://techblog.funliday.com/tags/seo/"/>
    
    <category term="cookie" scheme="https://techblog.funliday.com/tags/cookie/"/>
    
    <category term="view state" scheme="https://techblog.funliday.com/tags/view-state/"/>
    
    <category term="expressjs" scheme="https://techblog.funliday.com/tags/expressjs/"/>
    
  </entry>
  
  <entry>
    <title>利用 Puppeteer 把行程轉換成 PDF 的實務經驗</title>
    <link href="https://techblog.funliday.com/2023/09/15/%E5%88%A9%E7%94%A8-Puppeteer-%E6%8A%8A%E8%A1%8C%E7%A8%8B%E8%BD%89%E6%8F%9B%E6%88%90-PDF-%E7%9A%84%E5%AF%A6%E5%8B%99%E7%B6%93%E9%A9%97/"/>
    <id>https://techblog.funliday.com/2023/09/15/%E5%88%A9%E7%94%A8-Puppeteer-%E6%8A%8A%E8%A1%8C%E7%A8%8B%E8%BD%89%E6%8F%9B%E6%88%90-PDF-%E7%9A%84%E5%AF%A6%E5%8B%99%E7%B6%93%E9%A9%97/</id>
    <published>2023-09-15T06:18:15.000Z</published>
    <updated>2024-02-17T09:36:42.830Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;p&gt;Funliday 最近功能萬箭齊發，其中有幾項比較值得一提的，今天先來分享第一個，大家敲碗已久的行程轉成 PDF 功能是如何煉成的。&lt;/p&gt;
&lt;img</summary>
        
      
    
    
    
    
    <category term="puppeteer" scheme="https://techblog.funliday.com/tags/puppeteer/"/>
    
    <category term="pdf" scheme="https://techblog.funliday.com/tags/pdf/"/>
    
    <category term="playwright" scheme="https://techblog.funliday.com/tags/playwright/"/>
    
  </entry>
  
  <entry>
    <title>用 App search 的 curation 概念解決熱門景點的搜尋問題</title>
    <link href="https://techblog.funliday.com/2022/11/22/%E7%94%A8-App-search-%E7%9A%84-curation-%E6%A6%82%E5%BF%B5%E8%A7%A3%E6%B1%BA%E7%86%B1%E9%96%80%E6%99%AF%E9%BB%9E%E7%9A%84%E6%90%9C%E5%B0%8B%E5%95%8F%E9%A1%8C/"/>
    <id>https://techblog.funliday.com/2022/11/22/%E7%94%A8-App-search-%E7%9A%84-curation-%E6%A6%82%E5%BF%B5%E8%A7%A3%E6%B1%BA%E7%86%B1%E9%96%80%E6%99%AF%E9%BB%9E%E7%9A%84%E6%90%9C%E5%B0%8B%E5%95%8F%E9%A1%8C/</id>
    <published>2022-11-22T08:22:59.000Z</published>
    <updated>2024-02-17T09:36:42.850Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;img</summary>
        
      
    
    
    
    
    <category term="elasticsearch" scheme="https://techblog.funliday.com/tags/elasticsearch/"/>
    
    <category term="poibank" scheme="https://techblog.funliday.com/tags/poibank/"/>
    
    <category term="autocomplete" scheme="https://techblog.funliday.com/tags/autocomplete/"/>
    
    <category term="appsearch" scheme="https://techblog.funliday.com/tags/appsearch/"/>
    
  </entry>
  
  <entry>
    <title>Elasticsearch 的多語言 index 到底該如何設計？</title>
    <link href="https://techblog.funliday.com/2022/11/07/Elasticsearch-%E7%9A%84%E5%A4%9A%E8%AA%9E%E8%A8%80-index-%E5%88%B0%E5%BA%95%E8%A9%B2%E5%A6%82%E4%BD%95%E8%A8%AD%E8%A8%88%EF%BC%9F/"/>
    <id>https://techblog.funliday.com/2022/11/07/Elasticsearch-%E7%9A%84%E5%A4%9A%E8%AA%9E%E8%A8%80-index-%E5%88%B0%E5%BA%95%E8%A9%B2%E5%A6%82%E4%BD%95%E8%A8%AD%E8%A8%88%EF%BC%9F/</id>
    <published>2022-11-07T10:44:26.000Z</published>
    <updated>2024-02-17T09:36:42.826Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;p&gt;新版的 POI Bank 除了要解決多欄位搜尋的不便之外，還要解決底層 Elasticsearch index 不易維護的問題。&lt;/p&gt;
&lt;h2 id=&quot;1-原本的索引設計&quot;&gt;&lt;a href=&quot;#1-原本的索引設計&quot; class=&quot;headerlink&quot;</summary>
        
      
    
    
    
    
    <category term="elasticsearch" scheme="https://techblog.funliday.com/tags/elasticsearch/"/>
    
    <category term="poibank" scheme="https://techblog.funliday.com/tags/poibank/"/>
    
  </entry>
  
  <entry>
    <title>新版的景點搜尋功能要上線了！</title>
    <link href="https://techblog.funliday.com/2022/11/06/%E6%96%B0%E7%89%88%E7%9A%84%E6%99%AF%E9%BB%9E%E6%90%9C%E5%B0%8B%E5%8A%9F%E8%83%BD%E8%A6%81%E4%B8%8A%E7%B7%9A%E4%BA%86%EF%BC%81/"/>
    <id>https://techblog.funliday.com/2022/11/06/%E6%96%B0%E7%89%88%E7%9A%84%E6%99%AF%E9%BB%9E%E6%90%9C%E5%B0%8B%E5%8A%9F%E8%83%BD%E8%A6%81%E4%B8%8A%E7%B7%9A%E4%BA%86%EF%BC%81/</id>
    <published>2022-11-06T10:18:40.000Z</published>
    <updated>2024-02-17T09:36:42.846Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;img</summary>
        
      
    
    
    
    
    <category term="elasticsearch" scheme="https://techblog.funliday.com/tags/elasticsearch/"/>
    
    <category term="poibank" scheme="https://techblog.funliday.com/tags/poibank/"/>
    
  </entry>
  
  <entry>
    <title>在 MOPCON 2022 分享的「深入淺出 autocomplete」</title>
    <link href="https://techblog.funliday.com/2022/10/17/%E5%9C%A8-MOPCON-2022-%E5%88%86%E4%BA%AB%E7%9A%84%E3%80%8C%E6%B7%B1%E5%85%A5%E6%B7%BA%E5%87%BA-autocomplete%E3%80%8D/"/>
    <id>https://techblog.funliday.com/2022/10/17/%E5%9C%A8-MOPCON-2022-%E5%88%86%E4%BA%AB%E7%9A%84%E3%80%8C%E6%B7%B1%E5%85%A5%E6%B7%BA%E5%87%BA-autocomplete%E3%80%8D/</id>
    <published>2022-10-17T03:47:54.000Z</published>
    <updated>2024-02-17T09:36:42.834Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;iframe src=&quot;//www.slideshare.net/slideshow/embed_code/key/dqYXDq5Cdt0LOK&quot; width=&quot;595&quot; height=&quot;485&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot;</summary>
        
      
    
    
    
    
    <category term="elasticsearch" scheme="https://techblog.funliday.com/tags/elasticsearch/"/>
    
    <category term="poibank" scheme="https://techblog.funliday.com/tags/poibank/"/>
    
    <category term="redis" scheme="https://techblog.funliday.com/tags/redis/"/>
    
    <category term="autocomplete" scheme="https://techblog.funliday.com/tags/autocomplete/"/>
    
  </entry>
  
  <entry>
    <title>在 COSCUP-2022-分享的「釋放你的儲存空間！移除那些已經沒使用的 index」</title>
    <link href="https://techblog.funliday.com/2022/09/06/%E5%9C%A8-COSCUP-2022-%E5%88%86%E4%BA%AB%E7%9A%84%E3%80%8C%E9%87%8B%E6%94%BE%E4%BD%A0%E7%9A%84%E5%84%B2%E5%AD%98%E7%A9%BA%E9%96%93%EF%BC%81%E7%A7%BB%E9%99%A4%E9%82%A3%E4%BA%9B%E5%B7%B2%E7%B6%93%E6%B2%92%E4%BD%BF%E7%94%A8%E7%9A%84%20index%E3%80%8D/"/>
    <id>https://techblog.funliday.com/2022/09/06/%E5%9C%A8-COSCUP-2022-%E5%88%86%E4%BA%AB%E7%9A%84%E3%80%8C%E9%87%8B%E6%94%BE%E4%BD%A0%E7%9A%84%E5%84%B2%E5%AD%98%E7%A9%BA%E9%96%93%EF%BC%81%E7%A7%BB%E9%99%A4%E9%82%A3%E4%BA%9B%E5%B7%B2%E7%B6%93%E6%B2%92%E4%BD%BF%E7%94%A8%E7%9A%84%20index%E3%80%8D/</id>
    <published>2022-09-06T04:47:39.000Z</published>
    <updated>2024-02-17T09:36:42.834Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;iframe class=&quot;speakerdeck-iframe&quot; frameborder=&quot;0&quot; src=&quot;https://speakerdeck.com/player/e8398770b7084acabbfc6258adcd0be3&quot;</summary>
        
      
    
    
    
    
    <category term="postgresql" scheme="https://techblog.funliday.com/tags/postgresql/"/>
    
  </entry>
  
  <entry>
    <title>用 Redis 來處理熱門景點的 autocomplete 功能</title>
    <link href="https://techblog.funliday.com/2022/05/01/%E7%94%A8-Redis-%E4%BE%86%E8%99%95%E7%90%86%E7%86%B1%E9%96%80%E6%99%AF%E9%BB%9E%E7%9A%84-autocomplete-%E5%8A%9F%E8%83%BD/"/>
    <id>https://techblog.funliday.com/2022/05/01/%E7%94%A8-Redis-%E4%BE%86%E8%99%95%E7%90%86%E7%86%B1%E9%96%80%E6%99%AF%E9%BB%9E%E7%9A%84-autocomplete-%E5%8A%9F%E8%83%BD/</id>
    <published>2022-05-01T14:40:49.000Z</published>
    <updated>2024-02-17T09:36:42.854Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;img</summary>
        
      
    
    
    
    
    <category term="redis" scheme="https://techblog.funliday.com/tags/redis/"/>
    
    <category term="autocomplete" scheme="https://techblog.funliday.com/tags/autocomplete/"/>
    
    <category term="sorted set" scheme="https://techblog.funliday.com/tags/sorted-set/"/>
    
  </entry>
  
  <entry>
    <title>Funliday 2022 誠徵前端工程師及實習生</title>
    <link href="https://techblog.funliday.com/2022/03/16/Funliday-2022-%E8%AA%A0%E5%BE%B5%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%AB%E5%8F%8A%E5%AF%A6%E7%BF%92%E7%94%9F/"/>
    <id>https://techblog.funliday.com/2022/03/16/Funliday-2022-%E8%AA%A0%E5%BE%B5%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%AB%E5%8F%8A%E5%AF%A6%E7%BF%92%E7%94%9F/</id>
    <published>2022-03-16T09:31:26.000Z</published>
    <updated>2024-02-17T09:36:42.826Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;img</summary>
        
      
    
    
    
    
    <category term="徵才" scheme="https://techblog.funliday.com/tags/%E5%BE%B5%E6%89%8D/"/>
    
  </entry>
  
  <entry>
    <title>到保哥直播分享「老司機帶你上手 PostgreSQL 關聯式資料庫系統」</title>
    <link href="https://techblog.funliday.com/2021/10/13/%E5%88%B0%E4%BF%9D%E5%93%A5%E7%9B%B4%E6%92%AD%E5%88%86%E4%BA%AB%E3%80%8C%E8%80%81%E5%8F%B8%E6%A9%9F%E5%B8%B6%E4%BD%A0%E4%B8%8A%E6%89%8B-PostgreSQL-%E9%97%9C%E8%81%AF%E5%BC%8F%E8%B3%87%E6%96%99%E5%BA%AB%E7%B3%BB%E7%B5%B1%E3%80%8D/"/>
    <id>https://techblog.funliday.com/2021/10/13/%E5%88%B0%E4%BF%9D%E5%93%A5%E7%9B%B4%E6%92%AD%E5%88%86%E4%BA%AB%E3%80%8C%E8%80%81%E5%8F%B8%E6%A9%9F%E5%B8%B6%E4%BD%A0%E4%B8%8A%E6%89%8B-PostgreSQL-%E9%97%9C%E8%81%AF%E5%BC%8F%E8%B3%87%E6%96%99%E5%BA%AB%E7%B3%BB%E7%B5%B1%E3%80%8D/</id>
    <published>2021-10-13T14:41:15.000Z</published>
    <updated>2024-02-17T09:36:42.830Z</updated>
    
    
      
      
        
        
    <summary type="html">&lt;iframe src=&quot;//www.slideshare.net/slideshow/embed_code/key/AIC2t5nj9WvSx3&quot; width=&quot;595&quot; height=&quot;485&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot;</summary>
        
      
    
    
    
    
    <category term="postgresql" scheme="https://techblog.funliday.com/tags/postgresql/"/>
    
    <category term="flyway" scheme="https://techblog.funliday.com/tags/flyway/"/>
    
    <category term="nodejs" scheme="https://techblog.funliday.com/tags/nodejs/"/>
    
    <category term="postgis" scheme="https://techblog.funliday.com/tags/postgis/"/>
    
    <category term="blurhash" scheme="https://techblog.funliday.com/tags/blurhash/"/>
    
  </entry>
  
</feed>
