精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

求求你們別再用 kill -9 了,這才是 Spring Boot 停機(jī)的正確方式?。。?/h1>

開發(fā) 前端
先給新同學(xué)科普下,kill 命令后面帶的數(shù)字其實是信號編號。比如 kill -1 是刷新配置,kill -15 是溫柔告別,而 kill -9 呢,相當(dāng)于系統(tǒng)給進(jìn)程下了 “格殺勿論” 的圣旨 —— 管你在干啥,一秒鐘內(nèi)必須死,連收拾行李的時間都不給。

兄弟們,咱今天聊個技術(shù)圈里的 “老生常談但總有人踩坑” 的話題 —— 給 Spring Boot 應(yīng)用停機(jī)。

先問大家一個靈魂拷問:你們公司運(yùn)維大哥停機(jī)的時候,是不是總喜歡甩一句 “kill -9 搞定!”?要是你點頭了,那可得趕緊把這篇文章甩給他看,不然哪天線上數(shù)據(jù)丟了、緩存崩了,哭都找不到地方。

說真的,kill -9 這操作,就跟你關(guān)電腦直接拔電源似的,看著挺痛快,后遺癥能讓你頭皮發(fā)麻。今天咱就掰開揉碎了說說,為啥這玩意兒不能瞎用,以及 Spring Boot 到底該咋停機(jī)才體面。

一、kill -9 的 “暴力美學(xué)” 有多坑?

先給新同學(xué)科普下,kill 命令后面帶的數(shù)字其實是信號編號。比如 kill -1 是刷新配置,kill -15 是溫柔告別,而 kill -9 呢,相當(dāng)于系統(tǒng)給進(jìn)程下了 “格殺勿論” 的圣旨 —— 管你在干啥,一秒鐘內(nèi)必須死,連收拾行李的時間都不給。

這在 Spring Boot 應(yīng)用里簡直是災(zāi)難現(xiàn)場:

  • 正在寫數(shù)據(jù)庫的事務(wù)直接中斷,輕則數(shù)據(jù)不一致,重則表鎖死
  • 緩存里的熱點數(shù)據(jù)還沒同步到磁盤,一殺全沒了
  • 消息隊列里剛接的任務(wù)沒處理完,直接丟消息
  • 連接池沒來得及釋放連接,數(shù)據(jù)庫連接數(shù)爆了

我去年就見過一個經(jīng)典案例:某電商平臺用 kill -9 停支付服務(wù),結(jié)果有筆訂單狀態(tài)卡在 “支付中”,用戶錢扣了但訂單沒生效。排查了三天才發(fā)現(xiàn),是事務(wù)沒提交就被強(qiáng)殺,最后只能人工對賬修復(fù),光加班費(fèi)就花了小兩萬。

更絕的是有回跟運(yùn)維吵架,他說 “kill -9 快啊,出問題我背鍋!” 結(jié)果一周后真出問題了,他連夜跑路,鍋還不是得我們開發(fā)扛?

二、Spring Boot 的 “體面告別” 機(jī)制

其實從 Spring Boot 2.3 版本開始,官方就內(nèi)置了 “優(yōu)雅停機(jī)” 功能,說白了就是讓應(yīng)用有機(jī)會 “臨死前” 整理好遺物。原理特簡單:收到停機(jī)信號后,先拒絕新請求,把正在處理的請求做完,最后清理資源。

就像餐館打烊:先掛出 “停止?fàn)I業(yè)” 的牌子(拒絕新客),等最后一桌客人吃完(處理完請求),再打掃衛(wèi)生鎖門(釋放資源)。

1. 基礎(chǔ)配置三板斧

在 application.yml 里加這幾行,就能開啟優(yōu)雅停機(jī):

server:
  shutdown: graceful  # 開啟優(yōu)雅停機(jī)
spring:
  lifecycle:
    timeout-per-shutdown-phase: 30s  # 最大等待時間,超時就強(qiáng)制停

這配置就像給應(yīng)用定了個 “臨終遺囑”:最多等 30 秒,沒處理完的就算了,別耗著。

2. 誰先死誰后死?由你說了算

復(fù)雜應(yīng)用里有各種組件,比如數(shù)據(jù)庫連接池、Redis 客戶端、消息消費(fèi)者,它們的關(guān)閉順序很重要。可以用 @Order 注解指定順序:

@Component
@Order(Ordered.HIGHEST_PRECEDENCE)  # 最先關(guān)閉
public class RedisCleaner implements DisposableBean {
    @Override
    public void destroy() {
        // 關(guān)閉Redis連接
        System.out.println("Redis連接已清理");
    }
}
@Component
@Order(Ordered.LOWEST_PRECEDENCE)  # 最后關(guān)閉
public class DbCleaner implements DisposableBean {
    @Override
    public void destroy() {
        // 關(guān)閉數(shù)據(jù)庫連接
        System.out.println("數(shù)據(jù)庫連接已關(guān)閉");
    }
}

記住一個原則:依賴別人的先關(guān),被依賴的后關(guān)。就像下班時,先關(guān)電腦再關(guān)總閘,別搞反了。

三、不同場景的 “停機(jī)姿勢”

光有配置還不夠,不同部署方式得用不同的停機(jī)命令,這才是精髓。

1. 裸奔部署(直接 java -jar 啟動)

這種最常見,正確姿勢是先用 kill -15 發(fā)送終止信號:

# 找到進(jìn)程ID
ps -ef | grep java
# 溫柔告別
kill -15 12345  # 12345是你的進(jìn)程ID

這時候應(yīng)用會乖乖執(zhí)行優(yōu)雅停機(jī)流程,控制臺會打?。?/p>

2023-10-10 15:30:00.123  INFO 12345 --- [ionShutdownHook] o.s.b.w.e.t.GracefulShutdownServlet      : Commencing graceful shutdown. Waiting for active requests to complete
2023-10-10 15:30:05.456  INFO 12345 --- [ionShutdownHook] o.s.b.w.e.t.GracefulShutdownServlet      : Graceful shutdown complete

要是等了半天沒反應(yīng)(超過配置的 timeout),再用 kill -9 兜底,但這種情況一定要事后查日志,為啥會超時。

2. 容器化部署(Docker/K8s)

Docker 里別用 --rm 參數(shù)啟動,不然優(yōu)雅停機(jī)信號傳不進(jìn)去。正確的 Dockerfile 應(yīng)該加這行:

STOPSIGNAL SIGTERM  # 告訴Docker用SIGTERM信號停機(jī),相當(dāng)于kill -15

K8s 更簡單,它默認(rèn)就是發(fā) SIGTERM 信號,還會等 30 秒(可以通過 terminationGracePeriodSeconds 調(diào)整)。但有個坑:如果用了 liveness 探針,要確保探針不會在停機(jī)期間誤判應(yīng)用掛了,最好把探針超時設(shè)長點。

3. 用 systemd 管理的服務(wù)

很多 Linux 發(fā)行版用 systemd 管理服務(wù),配置文件里要加這行:

[Service]
ExecStop=/bin/kill -15 $MAINPID  # 停止時發(fā)送15信號

這樣執(zhí)行 systemctl stop your-service 時,就會觸發(fā)優(yōu)雅停機(jī)。

四、進(jìn)階技巧:給停機(jī)加道 “保險”

光靠框架自帶的機(jī)制還不夠,生產(chǎn)環(huán)境得加幾道 “防護(hù)網(wǎng)”。

1. 監(jiān)聽停機(jī)事件做特殊處理

有些臨界資源(比如分布式鎖),必須在停機(jī)時釋放,這時候可以監(jiān)聽 ContextClosedEvent 事件:

@Component
public class ShutdownListener {
    @EventListener(ContextClosedEvent.class)
    public void onShutdown() {
        // 釋放分布式鎖
        redissonClient.getLock("order:lock").unlock();
        // 打印停機(jī)時間,方便排查問題
        System.out.println("應(yīng)用于" + LocalDateTime.now() + "開始停機(jī)");
    }
}

這個事件會在所有 DisposableBean 執(zhí)行完后觸發(fā),相當(dāng)于 “最后遺言”。

2. 給 Web 服務(wù)器加層保護(hù)

如果用 Tomcat,可以配置連接器的關(guān)閉延遲:

server:
  tomcat:
    connection-timeout: 2s
    graceful-shutdown: 30s  # 等待連接處理的時間

Nginx 層面也要配合,停機(jī)前先把應(yīng)用從負(fù)載均衡里摘掉,避免新請求進(jìn)來:

# 從Nginx upstream中移除
nginx -s reload # 假設(shè)配置里已經(jīng)注釋掉該節(jié)點
# 等30秒再停機(jī)
sleep 30
kill -15 12345

3. 異步任務(wù)的 “收尾工作”

用 @Async 注解的異步任務(wù),默認(rèn)情況下停機(jī)時會被強(qiáng)制中斷??梢宰远x線程池解決:

@Configuration
@EnableAsync
public class AsyncConfig {
    @Bean
    public Executor taskExecutor() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(5);
        executor.setMaxPoolSize(10);
        executor.setWaitForTasksToCompleteOnShutdown(true); # 等待任務(wù)完成
        executor.setAwaitTerminationSeconds(30); # 最大等待時間
        return executor;
    }
}

五、排坑指南:優(yōu)雅停機(jī)失敗的 N 種可能

就算配置都對,也可能翻車,這些坑我踩過不止一次:

  • 死鎖導(dǎo)致無法停機(jī)

應(yīng)用里有死鎖的話,就算等再久也停不了??梢杂?jstack 命令查:

jstack 12345 > deadlock.log

搜 "deadlock" 關(guān)鍵詞,找到互相等待的線程。

  • 第三方庫不支持優(yōu)雅關(guān)閉

有些老的 SDK(比如某些數(shù)據(jù)庫驅(qū)動)不響應(yīng)關(guān)閉信號,得在代碼里手動調(diào)用它們的 close 方法。

  • 超時設(shè)置不合理

如果大部分請求處理要 20 秒,卻把 timeout 設(shè)成 10 秒,肯定會超時??梢韵葔簻y看看 99% 響應(yīng)時間,再把超時設(shè)大 50%。

  • 被監(jiān)控工具干擾

有些 APM 工具(比如某些鏈路追蹤)會注入代碼,可能影響停機(jī)流程??梢韵冉盟鼈兣挪?。

六、實戰(zhàn)案例:從血崩到絲滑

最后分享個真實案例:我們有個支付服務(wù),以前用 kill -9 停機(jī),每月至少出 2 次數(shù)據(jù)異常。改成優(yōu)雅停機(jī)后,半年零事故。

改造步驟就三步:

  1. 加優(yōu)雅停機(jī)配置(server.shutdown=graceful)
  2. 實現(xiàn) DisposableBean 清理緩存和連接
  3. 調(diào)整 Nginx 和 K8s 配置,實現(xiàn) “先摘流量再停機(jī)”

現(xiàn)在每次發(fā)布,控制臺都會乖乖打?。?/p>

2023-10-10 20:00:00.000  INFO --- [ionShutdownHook] c.m.payment.service.ShutdownService      : 開始清理未完成訂單 2023-10-10 20:00:02.123  INFO --- [ionShutdownHook] c.m.payment.service.ShutdownService      : 3筆訂單已補(bǔ)償完成 2023-10-10 20:00:03.456  INFO --- [ionShutdownHook] o.s.b.w.e.t.GracefulShutdownServlet      : 優(yōu)雅停機(jī)完成

看著就踏實。

總結(jié)一下

kill -9 就像急診室的除顫儀,只有在應(yīng)用徹底掛掉(無響應(yīng))時才能用,平時停機(jī)必須用優(yōu)雅方式。記住這幾句口訣:

  • 配置先行:server.shutdown=graceful
  • 命令用對:kill -15 不是 9
  • 順序別亂:先關(guān)客戶端再關(guān)服務(wù)端
  • 超時合理:留足處理時間
  • 監(jiān)控跟上:看日志確認(rèn)是否成功
責(zé)任編輯:武曉燕 來源: 石杉的架構(gòu)筆記
相關(guān)推薦

2021-05-21 13:10:17

kill -9微服務(wù)Java

2020-12-15 08:06:45

waitnotifyCondition

2020-06-15 08:12:51

try catch代碼處理器

2022-10-27 21:34:28

數(shù)據(jù)庫機(jī)器學(xué)習(xí)架構(gòu)

2021-05-25 09:30:44

kill -9Linux kill -9 pid

2020-12-11 09:24:19

Elasticsear存儲數(shù)據(jù)

2020-12-04 10:05:00

Pythonprint代碼

2020-12-02 11:18:50

print調(diào)試代碼Python

2025-01-10 06:30:00

2024-03-14 08:15:18

COUNT(*)數(shù)據(jù)庫LIMIT 1?

2023-10-26 16:33:59

float 布局前段CSS

2025-10-29 01:45:00

toString()SpringJackson

2024-12-26 07:47:20

2020-11-09 08:22:29

程序員 IT科技

2024-06-12 13:54:37

編程語言字符串代碼

2025-02-10 08:05:03

2025-01-15 12:31:46

2025-03-12 11:14:45

2025-09-17 01:00:00

2020-12-07 06:05:34

apidocyapiknife4j
點贊
收藏

51CTO技術(shù)棧公眾號

亚洲日本丝袜连裤袜办公室| 日本成人中文字幕| 亚洲黄色www| 国产真人无码作爱视频免费| 欧美成人二区| 成人夜色视频网站在线观看| 清纯唯美亚洲综合| 日韩在线视频网址| 日本成人a网站| 欧美日韩成人在线| 免费超爽大片黄| 在线观看麻豆| 99riav一区二区三区| 国产精品视频自拍| 日韩xxx高潮hd| 91日韩视频| 日韩精品高清视频| 999在线精品视频| 中文字幕不卡三区视频| 亚洲视频一区二区免费在线观看| 精品欧美一区二区精品久久| 国产精品一区二区人人爽| 国产精品一级| 欧美国产日韩精品| 欧美黄色高清视频| 蜜桃一区av| 欧美一区二区视频免费观看| 日本精品www| wwwww亚洲| 中文字幕一区二区三区在线观看| 久久久免费看| 日韩在线视频观看免费| 韩国av一区二区三区| 国产精品v片在线观看不卡| 日本熟妇成熟毛茸茸| 欧美+亚洲+精品+三区| 日韩在线资源网| 97在线观看免费视频| 亚洲品质自拍| 日韩激情av在线免费观看| 丰满少妇中文字幕| 电影一区中文字幕| 777a∨成人精品桃花网| 2025韩国理伦片在线观看| 免费观看成人性生生活片| 欧美性xxxx在线播放| 日本丰满少妇xxxx| av中文字幕电影在线看| 一区二区免费视频| 久久久久久久9| 黄色成人在线网| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美欧美一区二区| 天天干天天摸天天操| 成人一区二区三区视频在线观看| 97久久人人超碰caoprom欧美| 国产又粗又猛又黄又爽无遮挡| 日韩高清不卡在线| 国产激情久久久| 91久久国产综合久久91| 日本欧美韩国一区三区| 国产精品普通话| 在线视频你懂得| 裸体一区二区三区| 成人黄色片在线| www.国产.com| av激情综合网| 欧美日韩在线一二三| 国产高清自拍视频在线观看| 欧美激情在线一区二区三区| 在线电影看在线一区二区三区| 免费在线视频欧美| 亚洲伦理在线精品| 97超碰在线人人| 小黄鸭精品aⅴ导航网站入口| 色天天综合久久久久综合片| 男操女免费网站| www.久久99| 精品剧情在线观看| 中文字幕5566| 99久久激情| 欧美激情一区二区三区在线视频观看 | 亚洲理论电影片| 少妇av一区二区三区| 亚洲国产美女视频| 在线视频日韩| 国产精品视频网| 亚洲国产精品久久人人爱潘金莲| 99re在线视频这里只有精品| 亚洲精品影院| 超碰在线资源| 欧美日韩中字一区| 国产chinesehd精品露脸| 日韩有码一区| 久久久av网站| 亚洲精品1区2区3区| 蜜臀av一区二区在线观看| 91|九色|视频| 国产高清一区在线观看| 亚洲精品国产成人久久av盗摄| 久久久亚洲精品无码| 国产精品久久久久久吹潮| 欧美成人精品1314www| 手机毛片在线观看| 黄色亚洲免费| 国产区精品视频| 清纯唯美亚洲色图| 一区二区三区中文字幕电影| 国内外免费激情视频| 亚洲欧洲国产精品一区| 最近日韩中文字幕中文| 男人的天堂一区二区| 激情欧美一区二区三区在线观看| 久久免费一区| 污片在线免费观看| 欧美日韩mp4| 中国黄色a级片| 欧美日韩午夜| 成人xxxx视频| 成人在线观看免费| 午夜久久福利影院| 丰满少妇一区二区三区专区| 成人亚洲一区| 日韩美女在线看| 成人毛片在线精品国产| 亚洲精品视频免费观看| 中文字幕第100页| 国产一区网站| 欧美亚州一区二区三区| 亚洲乱码国产乱码精品精软件| 国产精品传媒视频| 国产精品入口免费软件| 九九综合九九| 欧美在线影院在线视频| 免费av一级片| 亚洲国产视频a| 成人三级做爰av| 亚洲深深色噜噜狠狠爱网站| 国产精品一区久久久| 成人影视在线播放| 欧美色综合影院| 女人又爽又黄免费女仆| 久久一二三区| 青青草成人网| 免费污视频在线一区| 一区二区三区亚洲| 国产精华7777777| 欧美激情资源网| 日本在线观看免费视频| 成人嘿咻视频免费看| 国产精品美女久久久久av超清| 黄色小视频在线免费观看| 色综合久久88色综合天天免费| www.久久av| 老司机午夜精品视频在线观看| 欧美精品尤物在线| 久久天堂av| 在线亚洲午夜片av大片| 在线观看免费视频一区| 亚洲欧洲精品一区二区精品久久久| 日本中文字幕精品—区二区| 性xxxx欧美老肥妇牲乱| 91视频网页| 漫画在线观看av| 亚洲毛片在线观看| www.五月婷婷.com| 中文字幕在线不卡一区| 中文字幕第10页| 亚洲人成久久| 欧美日韩亚洲一区二区三区四区| 88xx成人免费观看视频库 | 成熟的女同志hd| 国产福利视频一区二区三区| 五十路熟女丰满大屁股| 亚洲妇女av| 国产精品一二三在线| h片在线观看网站| 亚洲第一男人av| 久久精品久久久久久久| 最新欧美精品一区二区三区| 亚洲色偷偷色噜噜狠狠99网| 三级在线观看一区二区| 日韩 欧美 自拍| 欧美天堂影院| 国产精品稀缺呦系列在线| 污片在线免费观看| 国产午夜精品视频| 国产毛片一区二区三区va在线| 亚洲福利视频三区| 我想看黄色大片| 福利电影一区二区| 国产激情在线观看视频| 久久精品青草| 免费h精品视频在线播放| 日韩毛片免费看| 992tv成人免费影院| 亚洲免费视频一区二区三区| 亚洲激情视频在线| 国产一区二区视频免费观看| 欧美日韩久久久久| 国产午夜精品理论片| 99综合电影在线视频| 国产无遮挡猛进猛出免费软件| 亚洲精品美女91| 亚洲 欧洲 日韩| 国产在视频线精品视频www666| 97碰碰视频| 欧美久久久网站| 欧美在线www| 羞羞电影在线观看www| 在线成人中文字幕| 天天操天天操天天| 欧美一区午夜精品| 日韩不卡高清视频| 黑人巨大精品欧美一区免费视频| 国语对白在线播放| 欧美高清在线一区二区| 性欧美丰满熟妇xxxx性久久久| 极品少妇一区二区三区精品视频| 99re在线视频免费观看| 亚洲另类自拍| 欧美国产日韩激情| 中文字幕一区二区三三| 亚洲福利av| 国产精品午夜一区二区三区| 国产一区二区三区色淫影院| 亚洲成人黄色| 91天堂在线观看| 精品久久毛片| 国产精品欧美风情| 新片速递亚洲合集欧美合集| 2019国产精品自在线拍国产不卡| 视频在线这里都是精品| 久久香蕉频线观| 免费av在线网址| 中文字幕亚洲一区二区三区| 国产一区二区影视| 亚洲日本欧美日韩高观看| 亚州av在线播放| 亚洲精品国产精品乱码不99按摩| 亚洲精品911| 精品国产一区a| 亚洲黄色片视频| 日韩欧美综合一区| 亚洲精品一区二区三区不卡| 精品久久久影院| 黄色av小说在线观看| 亚洲高清免费观看高清完整版| 性中国古装videossex| 精品人伦一区二区色婷婷| 精品久久人妻av中文字幕| 日韩欧美成人午夜| www.97av.com| 亚洲福利视频网站| 天天爽夜夜爽夜夜爽| 日韩成人在线观看| 黄色在线视频观看网站| 最新国产成人av网站网址麻豆| 91高清在线视频| 久久成人av网站| 久操av在线| 欧美野外猛男的大粗鳮| 亚洲国产尤物| 91精品久久久久久蜜桃| 高清精品xnxxcom| 欧洲精品久久| 91日韩欧美| 国产视频在线观看网站| 国产日韩免费| 国产九九在线视频| 国产麻豆欧美日韩一区| 国产黑丝一区二区| 国产日韩av一区| 欧美成人免费看| 婷婷久久综合九色综合伊人色| 免费视频久久久| 在线成人av影院| 涩涩视频免费看| 亚洲午夜小视频| 香蕉成人app免费看片| 97免费视频在线播放| 88xx成人永久免费观看| 亚洲aⅴ日韩av电影在线观看 | av日韩亚洲| 成人精品久久av网站| 大桥未久女教师av一区二区| 日韩高清国产一区在线观看| 羞羞答答成人影院www| 日韩亚洲欧美视频| 欧美a级一区二区| 亚洲欧美综合视频| 国产精品无圣光一区二区| 欧美三级小视频| 色先锋久久av资源部| 国产美女无遮挡永久免费| 亚洲精品久久久久久久久久久久| aaa在线免费观看| 久久久久国产视频| 国产黄色精品| 久久综合九色99| 中文精品久久| 999在线免费视频| 波多野结衣一区二区三区| 日韩精品久久久久久久的张开腿让| 亚洲一区二区欧美日韩| 中文字幕欧美在线观看| 精品调教chinesegay| 在线观看小视频| 国产精品久久中文| 日韩一级电影| 阿v天堂2018| 国产精品一级黄| 黄色av片三级三级三级免费看| 天天影视涩香欲综合网| 精品毛片一区二区三区| 在线精品国产欧美| 偷拍自拍在线看| 国产精品v欧美精品v日韩精品| 91蜜臀精品国产自偷在线| 99久久激情视频| 懂色av一区二区夜夜嗨| 国产精品久久久免费看| 在线观看亚洲精品| 男人天堂网在线| 97国产精品视频| 福利片在线一区二区| 青青青青在线视频| 国产成人av一区二区三区在线观看| 欧美88888| 欧美日韩在线亚洲一区蜜芽| 国产一级片在线| 日本精品久久久久久久| 另类图片第一页| 久操网在线观看| 成人黄色国产精品网站大全在线免费观看 | 日本一区免费视频| 波多野结衣视频免费观看| 亚洲精品一区久久久久久| 阿v视频在线| 国产欧美亚洲日本| 好看不卡的中文字幕| 亚洲精品乱码久久久久久9色| 亚洲男人电影天堂| 国产麻豆一精品一男同| 欧美成人午夜影院| 亚洲精品一区国产| 黄页网站大全在线观看| av亚洲产国偷v产偷v自拍| 可以免费在线观看的av| 亚洲精品中文字幕有码专区| 韩漫成人漫画| 日韩影片在线播放| 麻豆免费看一区二区三区| 老司机深夜福利网站| 欧美一卡二卡三卡| 成人video亚洲精品| av成人免费观看| 亚洲另类自拍| 乐播av一区二区三区| 欧美性欧美巨大黑白大战| 欧美成人二区| 春色成人在线视频| 国产亚洲毛片在线| 国产一二三四五区| 欧美三级电影网| huan性巨大欧美| 国产在线播放一区二区| 久久综合婷婷| 日韩在线一卡二卡| 91精品国产91久久久久久一区二区 | 中文字幕av不卡| 精品久久久免费视频| 2020国产精品视频| 色999国产精品| 免费黄色在线播放| 色综合咪咪久久| 菠萝菠萝蜜在线观看| 国产亚洲欧美一区二区 | 欧美在线视频免费| 日韩免费看片| 亚洲欧美高清在线| 欧洲精品在线观看| 中文在线观看免费| 久久综合伊人77777麻豆| 麻豆精品在线观看| 国产在线拍揄自揄拍| 亚洲天堂第二页| 日韩三级不卡| 日韩av在线综合| 亚洲激情在线播放| 免费福利在线观看| 91美女福利视频高清| 国产午夜精品一区二区三区欧美| 刘亦菲国产毛片bd| 亚洲精品v天堂中文字幕| 国产成人午夜性a一级毛片| 奇米精品一区二区三区| 最新国产成人在线观看| 免费理论片在线观看播放老| 亚洲中国色老太|