---
# System prepended metadata

title: 線上面試 Template - Short URL
tags: [線上面試一面]

---

# 線上面試 Template - Short URL
###### tags: `線上面試一面`

## 需求
![](https://i.imgur.com/raPw2fR.png)

``` mermaid
flowchart LR
    User -->|input a long URL|ShortenUI[Shorten URL] --> ShortURL(a short URL)
    User -->|visits|ShortURL -->|redirect to|OriginURL[origin long URL]
```

- 新增一個短網址的服務，功能有點類似 https://bitly.com/
- 使用者可以將一個較長的網址，轉換為一個較短的網址。
- 短網址有預設的時效性，如果持續被訪問，時效性要被延長。
- 短網址要記錄被訪問的次數。

## Samples

### tbl1
|col1|col2|col3|
|---|---|---|
|val1|val2|val3|

```sql=
SELECT col1 AS 'C1', col2 AS 'C2' 
FROM tbl1 
```
### output
|c1|c2|
|--|--|
|val1|val2|


### sequence diagram
```sequence
a -> b : how are you
b -> a : i'm fine thank you
```

### Relation
``` mermaid
graph TD;
a -->|col1| b
a -->|col2| c
c --> a
```

