99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

Java微信小程序球館預(yù)約系統(tǒng)實(shí)戰(zhàn):排期建模與并發(fā)搶場方案

Java微信小程序球館預(yù)約系統(tǒng)實(shí)戰(zhàn):排期建模與并發(fā)搶場方案 去年幫一位做球館運(yùn)營的朋友落地了一套預(yù)約管理系統(tǒng)前端是微信小程序后端是Java整體跑通之后我才敢說這類看似很簡單的預(yù)約系統(tǒng)真正做起來全是細(xì)節(jié)。用戶選場地、選時(shí)間、下單支付、管理員核銷聽起來就是四個(gè)步驟但背后涉及場地與時(shí)段的多維度建模、并發(fā)訂場下的數(shù)據(jù)一致性、微信登錄與支付的接入、小程序端各種設(shè)備適配任何一個(gè)環(huán)節(jié)沒想清楚后面返工的成本都極高。這篇文章不是課程式教學(xué)而是把我從零搭建這套Java基于微信小程序的球館預(yù)約系統(tǒng)的完整思路、關(guān)鍵設(shè)計(jì)、踩坑記錄都寫出來配上源碼和文檔說明希望能給正在做同類項(xiàng)目的朋友省點(diǎn)時(shí)間。1. 球館預(yù)約系統(tǒng)的業(yè)務(wù)本質(zhì)與整體架構(gòu)1.1 先把場地時(shí)段的二維模型想清楚預(yù)約類系統(tǒng)的核心從來不是下單這個(gè)動(dòng)作而是排期數(shù)據(jù)怎么組織。球館預(yù)約和普通電商下單最大的區(qū)別在于商品是某個(gè)場地在某個(gè)時(shí)間段的使用權(quán)這是一個(gè)典型的二維組合模型。舉個(gè)例子一個(gè)球館有羽毛球場地A、B、C三片每天營業(yè)時(shí)間是9點(diǎn)到22點(diǎn)以1小時(shí)為最小預(yù)約單位。那么一天可售的商品就有 3片場地 × 13個(gè)時(shí)段 39個(gè)。一周就是273個(gè)。如果最小預(yù)約單位改成半小時(shí)這個(gè)數(shù)字直接翻倍。我見過很多初版設(shè)計(jì)把時(shí)段寫死成早中晚三個(gè)字段結(jié)果用戶要定晚上8點(diǎn)半到9點(diǎn)半系統(tǒng)直接改不了——這就是模型設(shè)計(jì)不到位。正確的做法是拆兩張核心表一張是場地表記錄場地基礎(chǔ)信息一張是排期表記錄某場地某天的某時(shí)段是否可約??捎脮r(shí)段在后臺提前生成用戶端只負(fù)責(zé)查和選。這樣的模型好處很多可以單獨(dú)對某個(gè)場地的某個(gè)時(shí)段做停售比如場地A在周三下午做維護(hù)、可以動(dòng)態(tài)調(diào)整價(jià)格黃金時(shí)段加價(jià)、可以輕松支持不同的預(yù)約粒度。我在文檔說明里畫的ER圖也是按這個(gè)思路來的建議所有做預(yù)約類系統(tǒng)的朋友先別急著寫代碼把這張二維組合模型想明白后面所有功能都是在這個(gè)骨架上長出來的。1.2 技術(shù)選型思路為什么是Spring Boot 原生微信小程序后端選型我用了Spring Boot MyBatis-Plus Redis MySQL前端用微信小程序原生語法。這套組合不算新潮但非常適合中小型球館預(yù)約項(xiàng)目。Spring Boot生態(tài)成熟招人容易社區(qū)資料多。MyBatis-Plus做單表CRUD效率極高尤其是分頁查詢、條件構(gòu)造器寫起來比手寫XML SQL痛快太多。Redis在這里有兩個(gè)職責(zé)一是緩存熱點(diǎn)數(shù)據(jù)比如未來兩天的場地余量二是做分布式鎖防止并發(fā)搶場。MySQL存核心業(yè)務(wù)數(shù)據(jù)排期表日增量不大壓力完全在可控范圍。小程序端我沒有選uni-app或者Taro直接用原生。原因是這個(gè)項(xiàng)目頁面量不大原生語法在微信開發(fā)者工具里的調(diào)試體驗(yàn)最穩(wěn)定而且很多隱藏坑比如導(dǎo)航欄高度適配、分享參數(shù)傳遞原生處理起來最直接。跨端框架適合大型多端項(xiàng)目但對球館預(yù)約這種只服務(wù)微信用戶的場景原生是性價(jià)比最高的選擇。1.3 目錄結(jié)構(gòu)與數(shù)據(jù)表設(shè)計(jì)項(xiàng)目采用經(jīng)典的分層結(jié)構(gòu)controller、service、mapper、entity、config、common統(tǒng)一返回體和異常處理。我習(xí)慣在common里放一個(gè)Result類所有接口統(tǒng)一返回 code message data小程序端做統(tǒng)一攔截。這樣可以避免每個(gè)接口返回結(jié)構(gòu)不一致前端解析起來像拆盲盒。數(shù)據(jù)表方面核心是下面這幾張表名用途關(guān)鍵字段venue場館信息area_type、opening_time、closing_time、addresscourt場地信息venue_id、name、statuscourt_schedule排期表court_id、date、start_time、end_time、price、statususer用戶表openid、nickname、phoneorder訂單表order_no、user_id、schedule_id、amount、status、pay_timerefund_record退款記錄order_no、refund_amount、reason、status排期表一定要加聯(lián)合唯一索引比如 (court_id, date, start_time)這是防止重復(fù)生成排期的底層保障。訂單表的 status 建議用 TinyInt 存數(shù)字狀態(tài)碼不要用字符串省空間也方便比較。這里多說一句order_no 生成不要用自增ID用時(shí)間戳隨機(jī)數(shù)拼一個(gè)20位以內(nèi)的業(yè)務(wù)單號微信支付回調(diào)時(shí)要用它做冪等匹配格式穩(wěn)定很重要。2. Java后端最容易翻車的兩個(gè)點(diǎn)時(shí)段建檔與并發(fā)訂場2.1 周循環(huán)排期用任務(wù)自動(dòng)生成一個(gè)周期內(nèi)的場地狀態(tài)排期數(shù)據(jù)不是人工一條條錄進(jìn)去的而是需要一個(gè)生成機(jī)制。我的做法是系統(tǒng)定義一個(gè)定時(shí)任務(wù)每天凌晨自動(dòng)生成未來一周的排期數(shù)據(jù)。比如今天是周一任務(wù)會(huì)把下周一之前的所有場地時(shí)段補(bǔ)充完整。如果某天場地需要維護(hù)后臺管理員可以單獨(dú)把那條排期標(biāo)記為不可約不需要改生成邏輯。生成邏輯的核心是嵌套循環(huán)先遍歷場地再遍歷營業(yè)時(shí)段逐條插入排期表。插入前先檢查這條排期是否已存在存在就跳過。這個(gè)先查再插的操作有并發(fā)風(fēng)險(xiǎn)多個(gè)定時(shí)任務(wù)實(shí)例同時(shí)跑所以我在排期表上建了上文提到的聯(lián)合唯一索引真出現(xiàn)重復(fù)插入會(huì)被數(shù)據(jù)庫直接擋掉比在代碼里加鎖簡單可靠得多。還有一個(gè)小細(xì)節(jié)跨天問題。球館如果營業(yè)到凌晨2點(diǎn)那么23:00-00:00這個(gè)時(shí)段到底屬于哪一天我統(tǒng)一按開始時(shí)間所在日期歸屬時(shí)段跨天就把結(jié)束時(shí)間直接寫成第二天的日期時(shí)間排期表里的date字段只表示這是哪一天開放的場次。這個(gè)規(guī)則一定要在文檔說明里寫清楚不然前端展示周五晚場的時(shí)候很容易錯(cuò)位。2.2 并發(fā)下黃金時(shí)段被搶的問題鎖不是越重越好球館預(yù)約最經(jīng)典的并發(fā)場景是晚上7點(diǎn)到9點(diǎn)的黃金時(shí)段同一片場地兩個(gè)人同時(shí)點(diǎn)擊預(yù)約。如果代碼是先查余量再扣減那在高并發(fā)下必然出現(xiàn)超賣——兩個(gè)人都查到了余量都下單成功。我當(dāng)時(shí)設(shè)計(jì)了三種可選方案實(shí)際選的是第二種第一數(shù)據(jù)庫樂觀鎖在排期表加一個(gè)version字段更新時(shí)帶上version條件。好處是無鎖開銷壞處是沖突的時(shí)候用戶直接報(bào)錯(cuò)體驗(yàn)比較生硬。第二Redis分布式鎖 事務(wù)以 schedule_id 為鎖鍵用戶請求時(shí)先搶鎖搶到后走下單事務(wù)事務(wù)提交后再釋放鎖。這樣可以保證同一片場地同一個(gè)時(shí)段同時(shí)只有一個(gè)請求在操作其他請求等待或快速失敗。我選這個(gè)方案是因?yàn)樗缺WC了數(shù)據(jù)一致性又不會(huì)像樂觀鎖那樣讓大量請求直接失敗。第三數(shù)據(jù)庫悲觀鎖SELECT ... FOR UPDATE實(shí)現(xiàn)最簡單但對數(shù)據(jù)庫連接占用比較久并發(fā)高了容易拖垮連接池。這里有一個(gè)很多新手容易踩的坑Redis鎖釋放時(shí)機(jī)。不能剛執(zhí)行完扣庫存就釋放鎖事務(wù)還沒提交的話另一個(gè)請求拿到鎖讀到的還是舊數(shù)據(jù)。我當(dāng)時(shí)把鎖的范圍包裹到整個(gè)事務(wù)方法外層用注解方式做了個(gè)簡單的鎖切面確保事務(wù)提交后才釋放鎖。代碼大致是下面這個(gè)結(jié)構(gòu)public OrderResult createOrder(Long scheduleId, Long userId) { String lockKey court:schedule:lock: scheduleId; boolean locked redisLock.tryLock(lockKey, 5, TimeUnit.SECONDS); if (!locked) { return OrderResult.fail(手速太快了換個(gè)時(shí)段試試); } try { return orderService.createOrder(scheduleId, userId); } finally { redisLock.unlock(lockKey); } }鎖的超時(shí)時(shí)間要結(jié)合實(shí)際業(yè)務(wù)耗時(shí)設(shè)置我用5秒是因?yàn)橄聠问聞?wù)里包含了微信支付預(yù)下單請求最慢也就兩三秒。設(shè)置太短會(huì)鎖失效太長會(huì)阻塞正常請求。這個(gè)參數(shù)沒有銀彈壓測之后再定最靠譜。2.3 微信登錄與會(huì)話保持code2Session那點(diǎn)事小程序端調(diào)用 wx.login() 拿到臨時(shí) code后端拿這個(gè) code 請求微信接口換取 openid 和 session_key。這里有幾個(gè)容易踩的坑我得說清楚。首先code 有效期只有5分鐘而且只能用一次。如果前端換了 code 后請求失敗重試就必須重新 wx.login()否則后端一查就報(bào)invalid code。其次session_key 不要自己存數(shù)據(jù)庫。它是微信側(cè)的會(huì)話密鑰有效期不固定而且官方建議敏感操作時(shí)才去解密。我們自己的系統(tǒng)要維護(hù)登錄態(tài)正確做法是拿到 openid 后查用戶表存在就當(dāng)老用戶處理不存在就自動(dòng)注冊然后自己生成一個(gè)業(yè)務(wù) token比如UUID或者JWT返回給小程序。小程序后續(xù)請求帶這個(gè) token后端從 token 解析出 userId。token 我建議存 Redis 并設(shè)置過期時(shí)間比如7天。每次請求通過攔截器校驗(yàn) token 有效性順便用 Redis 的過期機(jī)制實(shí)現(xiàn)無感續(xù)期。如果 token 固定不過期用戶體驗(yàn)是省事了但安全性差很多尤其是球館預(yù)約涉及支付訂單找回密碼這種功能雖然用不上但賬號被盜的后果還是得防。3. 小程序端的預(yù)約體驗(yàn)從場館列表到支付成功3.1 場館列表的加載更多分頁要這么做才不卡小程序端首頁是場館列表數(shù)據(jù)量不大但如果直接用 wx.request 一次性拉全量數(shù)據(jù)網(wǎng)絡(luò)差的時(shí)候會(huì)白屏很久而且用戶滑動(dòng)的時(shí)候沒有任何過渡。這里我用的是經(jīng)典的分頁加載 觸底加載更多模式。分頁參數(shù)我習(xí)慣用 pageNum 和 pageSize后端用 MyBatis-Plus 的 Page 插件一行代碼就能拿到分頁結(jié)果。小程序端維護(hù)三個(gè)核心變量pageNum、pageSize、hasMore。每次滾動(dòng)到底部觸發(fā) onReachBottompageNum 加一把新數(shù)據(jù) concat 到舊數(shù)據(jù)后面。hasMore 的判斷標(biāo)準(zhǔn)是本次返回的數(shù)據(jù)條數(shù)是否等于 pageSize如果小于說明沒有更多了。加載更多還有一個(gè)體驗(yàn)細(xì)節(jié)請求發(fā)出后要加一個(gè) loading 狀態(tài)標(biāo)記防止用戶快速滑動(dòng)觸發(fā)多次重復(fù)請求。用 boolean 變量 isLoading 控制請求開始置 true請求結(jié)束后置 false只有 isLoading 為 false 時(shí)才允許發(fā)起下一次請求。onReachBottom() { if (this.data.isLoading || !this.data.hasMore) return; this.setData({ isLoading: true, pageNum: this.data.pageNum 1 }); this.fetchVenueList(); }另外微信小程序在 onPullDownRefresh 下拉刷新時(shí)要調(diào)用 wx.stopPullDownRefresh()不然刷新動(dòng)畫會(huì)一直轉(zhuǎn)。這個(gè) API 很容易被忽略我在文檔里也單獨(dú)標(biāo)出來了。3.2 場地選擇與時(shí)段面板的狀態(tài)控制預(yù)約頁是整個(gè)小程序交互最復(fù)雜的部分用戶先選日期再選場地再選時(shí)段然后看到價(jià)格。這個(gè)頁面的核心是一場狀態(tài)聯(lián)動(dòng)。我采用了三段式布局頂部日期橫滑條中間場地 Tab底部時(shí)段網(wǎng)格。選日期的時(shí)候場地 Tab 和時(shí)段網(wǎng)格全部重置選場地的時(shí)候時(shí)段網(wǎng)格重新請求該場地該日期的排期數(shù)據(jù)。這里要注意不要每次切換都發(fā)請求最好做一層前端緩存比如按 courtId date 作為 key把排期數(shù)據(jù)存在內(nèi)存變量里切換回來直接讀緩存。考慮到小程序 setData 的性能瓶頸對于頻繁切換的交互緩存策略能明顯降低卡頓感。時(shí)段網(wǎng)格的每個(gè)格子根據(jù)排期數(shù)據(jù)有三種狀態(tài)可約、已被約、停售。已被約的格子置灰并顯示已約停售的顯示維護(hù)中只有可約狀態(tài)可點(diǎn)擊。點(diǎn)擊后高亮當(dāng)前選擇同時(shí)把價(jià)格顯示到頁面底部按鈕上。價(jià)格這里要由后端返回前端不要自己做計(jì)算否則后臺改價(jià)格規(guī)則后小程序端會(huì)顯示舊價(jià)格。日期橫滑條需要注意日期跨月和今天不能約過去的時(shí)段這兩個(gè)邊界。我的處理是日期列表由前端生成未來7天當(dāng)天之前不可選如果選的是今天后端查詢排期時(shí)會(huì)把開始時(shí)間早于當(dāng)前時(shí)間的時(shí)段直接標(biāo)記為不可約。這個(gè)規(guī)則前后端都要做后端是必須的前端是為了體驗(yàn)。3.3 支付前后的狀態(tài)機(jī)切換訂單狀態(tài)我用狀態(tài)機(jī)管理這一點(diǎn)強(qiáng)烈建議在文檔說明里畫一張狀態(tài)圖。整個(gè)狀態(tài)流轉(zhuǎn)是待支付 → 已支付 → 已核銷以及 待支付 → 已取消已支付 → 已退款。用戶在預(yù)約頁提交訂單后后端創(chuàng)建訂單并返回訂單號狀態(tài)是待支付同時(shí)調(diào)微信支付統(tǒng)一下單接口拿到支付參數(shù)返回給小程序。小程序收到后用 wx.requestPayment 拉起支付面板。這里有個(gè)非常容易出錯(cuò)的地方支付成功后要等回調(diào)更新狀態(tài)而不是前端直接跳轉(zhuǎn)。微信支付的回調(diào)是異步的前端 wx.requestPayment 的 success 只代表用戶輸入密碼完成了支付但后端還沒收到支付結(jié)果通知。如果這時(shí)候用戶立刻關(guān)掉小程序回調(diào)可能還沒到數(shù)據(jù)庫里的訂單還是待支付。穩(wěn)妥的做法是前端支付成功后就跳轉(zhuǎn)到支付結(jié)果確認(rèn)中頁面同時(shí)輪詢訂單狀態(tài)接口每1.5秒查一次直到訂單狀態(tài)變?yōu)橐阎Ц痘蛞淹丝畈盘厥醉摗]喸兊拇a要控制次數(shù)比如最多查10次超時(shí)后提示用戶支付結(jié)果確認(rèn)中請稍后在訂單列表查看。這個(gè)交互雖然笨一點(diǎn)但能避免大量支付了但訂單沒更新的客訴。支付回調(diào)接口一定要做冪等處理。微信可能因?yàn)榫W(wǎng)絡(luò)原因重復(fù)推送回調(diào)后端要根據(jù)訂單號判斷如果已經(jīng)是已支付就立刻返回 success不再做任何修改。我之前見過一個(gè)項(xiàng)目沒做冪等重復(fù)回調(diào)把訂單金額累加了兩遍對賬的時(shí)候賬都平不上。4. 管理后臺與訂單流轉(zhuǎn)核銷、退款與數(shù)據(jù)統(tǒng)計(jì)4.1 訂單列表與核銷流程給前臺一套高效的驗(yàn)票工具后臺管理端我用的是獨(dú)立的Web項(xiàng)目前端是Vue Element UI后端和預(yù)約小程序共用同一套Java服務(wù)。管理端的作用不只是看數(shù)據(jù)更重要的是處理線下場景。核銷是球館最常用的操作用戶到場后打開小程序出示核銷碼前臺在管理端輸入或者掃碼完成核銷。核銷碼我用了動(dòng)態(tài)碼方案訂單支付成功后生成一個(gè)6位數(shù)字碼過期時(shí)間是訂單日期的次日凌晨。前臺也可以按手機(jī)號查訂單再手動(dòng)核銷兩條路徑都做了兜底。核銷操作背后要校驗(yàn)幾件事訂單狀態(tài)必須是已支付、核銷碼和訂單號匹配、訂單日期是今天。這三條缺一條都不能放行。核銷完成后訂單狀態(tài)變?yōu)橐押虽N不可逆。我做了一個(gè)二次確認(rèn)彈窗前臺一旦誤操作可以少一點(diǎn)損失。這里實(shí)際踩過的坑是核銷碼里容易混入容易混淆的字符比如0和O、1和I生成時(shí)必須要剔除或者用純數(shù)字。管理端還支持手動(dòng)退款操作。退款調(diào)用微信支付退款接口退完更新訂單狀態(tài)。因?yàn)樯婕百Y金操作我加了一級管理員審批權(quán)限普通前臺只能發(fā)起退款申請老板在更高權(quán)限賬號上審批。審批通過后才真正調(diào)退款接口。這種設(shè)計(jì)不是為了復(fù)雜而是球館這種實(shí)體店退款糾紛特別容易發(fā)生在前臺操作不規(guī)范上權(quán)限拉開一層能省掉很多麻煩。4.2 運(yùn)營看板場館管理者真正關(guān)心的是這幾個(gè)數(shù)管理后臺首頁我做了一個(gè)簡單的數(shù)據(jù)看板不要搞花里胡哨的圖表最核心的是幾個(gè)指標(biāo)今日營收、今日訂單數(shù)、今日核銷數(shù)、未來7天預(yù)約量趨勢、各場地的預(yù)約熱度。未來7天預(yù)約量是我特意加的因?yàn)榍蝠^老板最關(guān)心的是今晚有沒有人訂。趨勢用簡單的柱狀圖展示預(yù)約熱度用場地的預(yù)約率排序這樣能直觀看到哪片場地最搶手為定價(jià)調(diào)整做參考。這里我剛開始犯過一個(gè)錯(cuò)把看板做得很重接了一套大屏用的數(shù)據(jù)可視化組件結(jié)果球館前臺電腦配置不高加載圖表卡到不行。后來全部換成輕量級組件甚至有一個(gè)版本直接輸出純HTML表格。我的建議是內(nèi)部管理工具的性能比視覺效果重要100倍優(yōu)先保證可用性再談美觀。5. 部署上線前的配置清單與實(shí)測踩坑記錄5.1 域名、HTTPS與小程序后臺配置漏一步都上線不了微信小程序的網(wǎng)絡(luò)請求有嚴(yán)格限制必須是 HTTPS 域名而且域名必須在小程序后臺配置到 request 合法域名里。我第一次上線就漏了這一步真機(jī)調(diào)試時(shí)所有接口都報(bào)url not in domain list排查了好久才反應(yīng)過來。配置清單大概是這樣的首先準(zhǔn)備一個(gè)備案過的域名解析到服務(wù)器。服務(wù)器上配好 Nginx 做反向代理同時(shí)給域名簽發(fā) HTTPS 證書我用的是免費(fèi)證書申請和續(xù)期都有自動(dòng)化工具。然后在小程序后臺把接口域名添加到 request 合法域名里。開發(fā)者工具里要關(guān)閉不校驗(yàn)合法域名這個(gè)選項(xiàng)再去測因?yàn)殚_著這個(gè)選項(xiàng)真機(jī)上就會(huì)出現(xiàn)上線前一切正常上線后全掛的尷尬局面。如果是本地開發(fā)可以用開發(fā)者工具自帶的不校驗(yàn)合法域名功能但記住這只是開發(fā)便利不是上線的依據(jù)。調(diào)試階段我想抓包看網(wǎng)絡(luò)請求細(xì)節(jié)用 Charles 代理看小程序和服務(wù)器之間的交互排查過幾個(gè)詭異的超時(shí)問題這個(gè)是看查問題的利器建議做小程序開發(fā)的朋友都提前熟悉。5.2 體驗(yàn)版分發(fā)與真機(jī)調(diào)試讓別人試用沒那么簡單開發(fā)完要發(fā)給球館老板試用不是直接把代碼發(fā)給他就行的。正確流程是在微信公眾平臺把代碼上傳設(shè)為體驗(yàn)版然后添加體驗(yàn)成員。這里有個(gè)坑體驗(yàn)成員必須是該小程序的開發(fā)者或者體驗(yàn)者而且需要在小程序后臺手動(dòng)添加。微信開發(fā)者工具里有個(gè)預(yù)覽功能可以生成二維碼但這個(gè)二維碼是臨時(shí)性的適合開發(fā)自測不適合長期給運(yùn)營人員用。體驗(yàn)版在真機(jī)上要用手機(jī)流量或者WiFi訪問一定確保手機(jī)和服務(wù)器網(wǎng)絡(luò)連通。我第一次給朋友發(fā)體驗(yàn)版他打開一片空白最后發(fā)現(xiàn)是服務(wù)器只允許內(nèi)網(wǎng)IP訪問手機(jī)用的是4G流量根本連不上。這個(gè)問題的排查思路很簡單用手機(jī)瀏覽器訪問一下接口域名能打開看到 JSON 就說明網(wǎng)絡(luò)通打不開就是防火墻或白名單問題。真機(jī)調(diào)試還有一個(gè)常見的適配問題頂部導(dǎo)航欄高度。iPhone X 系列和普通機(jī)型的狀態(tài)欄高度不一樣如果自定義導(dǎo)航欄要在 onLoad 里獲取 wx.getSystemInfoSync() 的狀態(tài)欄高度來做適配。用系統(tǒng)默認(rèn)導(dǎo)航欄就沒有這個(gè)問題但自定義體驗(yàn)好一點(diǎn)。我當(dāng)時(shí)的方案是頁面布局流一點(diǎn)導(dǎo)航欄直接用系統(tǒng)默認(rèn)的省掉一批適配問題把精力花在業(yè)務(wù)上。5.3 我的實(shí)測踩坑清單從上線到現(xiàn)在改過的這些問題有一說一上線前的測試再充分真實(shí)運(yùn)營起來還是會(huì)暴露問題。我在跑通這個(gè)項(xiàng)目前后最讓我印象深刻的幾個(gè)坑寫在這里給大家做個(gè)參考。第一個(gè)是時(shí)區(qū)問題。服務(wù)器是 UTC 時(shí)區(qū)數(shù)據(jù)庫存的是北京時(shí)間但定時(shí)任務(wù)生成排期時(shí)用的 LocalDate.now() 取的是服務(wù)器本地日期導(dǎo)致排期整體晚了一天。我后來統(tǒng)一在 Spring Boot 配置里指定了時(shí)區(qū)同時(shí)數(shù)據(jù)庫連接串里也加了 serverTimezoneAsia/Shanghai。這個(gè)問題如果不上線跑幾天根本發(fā)現(xiàn)不了但發(fā)現(xiàn)了就會(huì)很頭疼。第二個(gè)是支付回調(diào)的網(wǎng)絡(luò)抖動(dòng)。微信支付回調(diào)偶爾會(huì)有幾秒延遲如果用戶在小程序里一直等不到結(jié)果就會(huì)反復(fù)點(diǎn)支付按鈕。我后來在后端做了一個(gè)兜底待支付訂單超過30分鐘自動(dòng)關(guān)閉支付回調(diào)成功但訂單已關(guān)閉的情況自動(dòng)重新開啟訂單并進(jìn)入已支付狀態(tài)。這個(gè)邏輯起初沒想周全后來發(fā)現(xiàn)用戶等了太久不支付支付后訂單被關(guān)的情況后加上去的。第三個(gè)是小程序端 session 過期導(dǎo)致已登錄狀態(tài)集體失效。用戶在球館前臺用一臺手機(jī)核銷另一臺手機(jī)退出了登錄狀態(tài)業(yè)務(wù)數(shù)據(jù)倒沒亂但操作者會(huì)以為自己賬號丟了。我后來把 token 過期時(shí)間調(diào)長到14天同時(shí)在關(guān)鍵操作核銷、退款審批前用指紋或者密碼做二次身份確認(rèn)這樣賬號安全性和體驗(yàn)都照顧到了。第四個(gè)比較隱蔽批量接口的性能。訂單列表如果一次性查全量幾千條數(shù)據(jù)還能扛但跑到幾萬條就會(huì)明顯變慢。管理端列表我加了日期范圍篩選器和分頁同時(shí)給 order 表的 create_time 建了普通索引查詢從秒級降到毫秒級。這個(gè)優(yōu)化雖然基礎(chǔ)但對內(nèi)部工具來說提升非常直接。最后再分享一個(gè)實(shí)際運(yùn)營中的小技巧做這種預(yù)約系統(tǒng)代碼是一方面運(yùn)營策略也得跟上。我在上線之后發(fā)現(xiàn)球館最怕的是用戶預(yù)約了但沒來場地空著浪費(fèi)。后來我在管理端加了一個(gè)簡單的爽約統(tǒng)計(jì)連續(xù)爽約3次的用戶會(huì)收到提醒。這個(gè)小功能代碼量不大但球館老板反饋很好。如果你也打算做類似系統(tǒng)建議一開始就在用戶表里預(yù)留一個(gè) credit 或者 status 字段后期做運(yùn)營功能會(huì)少改很多表結(jié)構(gòu)。從項(xiàng)目規(guī)劃到上線我最大的體會(huì)是預(yù)約類系統(tǒng)的核心是業(yè)務(wù)模型的準(zhǔn)確性和數(shù)據(jù)一致性的把握這決定了系統(tǒng)能不能撐住真實(shí)場景而不是堆了多少花哨功能。編程技術(shù)和思維框架在項(xiàng)目演進(jìn)中的作用不只是把代碼寫出來而是讓你理解系統(tǒng)每一個(gè)狀態(tài)變化背后的業(yè)務(wù)含義。希望我的這個(gè)過程和踩坑經(jīng)驗(yàn)?zāi)軒湍阍谧约旱念A(yù)約系統(tǒng)項(xiàng)目里少走一段彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
97超碰欧美中文字幕| 婷婷中文无码| 天天色播| 亚洲99热| 天天射综合网天天插| 中文字幕亚洲-区久久99婷婷| 久久五月激情综合| 99热在这里只有精品| 久久婷婷六月| 亚洲激情婷婷| 亚洲婷婷激情综合激情999精品| 婷婷狠狠操| 亚洲无码九九| 丁香五月婷婷色综合基地| 亚洲久艹| 9久操| 日本色色色| 色婷婷AV久久久久久久| 狠狠操天天日| 婷婷五月丁香高清无码| 九九热这里只有精品7| 五月婷狠狠| 色色色色色综合| 综合激情站| www.粉嫩av.com| 五月色亭丁香| 五月丁香狠狠爱婷婷综合| 五月婷在线| 欧美这里只有精品| 成人开心五月天| 丁香五月 综合| 婷婷综合影院| 午夜丁香综合婷婷| 超碰在线观看9| 天天操天天国产三级片处女学生妹| 99在线免费观看| 97人妻碰碰碰久久香蕉| 欧美色色色色色色| 91精品婷婷国产综合久久| 国产无套精品一区二区| 久久色这里只有精品| 色9色| 99ri在线视频| 99er精品| www.狠狠操.con| 九九色影院| 97色97干| 亚洲人成网亚洲欧洲无码久久| 色综合狠狠色| 亚洲天堂99| 国产精品操| 色婷婷影| 久久大香蕉| 欧美日朝成人| 婷婷色色综合激情| 天天色官网| 五月丁香在线国产| www.丁香五月| 日韩高清成人| 操人91| 99在线小视频| 最近免费中文字幕大全高清大全1| 97天堂| 五月丁香福利| 亚洲久热| 91精品刘玥| 色激情网| 五月丁香啪啪婷婷| 天堂五月婷婷| 丁香五月天激情免费在线观看AV777| 日本颜色视频人人爱| 亚洲人妻五月丁香婷婷| 九九这里只有精品| 激情综合网五月婷婷| 九九色热| 久久男人网婷婷| 丁香婷婷老司机久操| 熟美女麻豆| 婷婷丁香五月天影院 | 婷婷五月天99| 99热国产免费| 六月婷婷激情| 亚洲AV永久无码影院黑人| 亚洲另类AV| 五月天婷婷色色首页| 国产免费av在线| 欧美色97| 最新精品视频99| 久色国产| 色婷婷狠狠| 操碰97| 五月停停大香蕉| 69色婷婷| 五月丁香六月婷婷免费| 狠狠干综合| a在线观看| 国产精品久久久久久妇女6080| 欧美黄色一级| 都市激情久久| 很很干天天干| 国产精品人成A片一区二区| www,setingting| 亚洲成人av在线播放| 五月色网| 99性爱视频| 丁香六月婷婷| 久久婷网| 婷婷五月丁香伊人| 丰满人妻妇伦又伦精品国产| www狠狠| 大狠狠在线| 91要啪| 天天做综合| 久久思思热视频| 久久婷婷亚洲| 99干99| 天天插综合在线| 91成人性爱视频| 五月激情婷婷丁香| 91久久综合亚洲噜噜成人在线| 玖玖伦理电影| 色婷婷丁香五月天| 久久亚洲无码| 五月激情婷婷丁香天堂| 97操操网| 五月天色婷伊人| 欧美日韩成人高清在线| av免费在线观看0| 丁香五月性爱| 99在线热| 大香蕉五月天婷婷丁香91| 日日噜噜久久婷婷五月天| 婷婷六月亚洲综合| 国产99久9在线+|+传媒| 五月天婷婷成人资源站| 色五月激情五月| 99精品国产热久久91色欲| 欧美婷婷五月| 色五月天成人| 性爱激情久久| 99热精品6| 97色在线| 久色网| 婷婷丁香五月激情| av五月丁香| 丁香五月亚洲无码| 欧美成人在线观看| 日本熟女三区| 国产成人精品亚洲线观看| 97影院一级片| 91久久综合亚洲鲁鲁五月天| 丁香五月天.com| 五月婷婷啪啪啪啪| 久久青草国| 色婷丨日丨天丨综合久久| 97超碰综合| 超碰9在| 天天色官网| 国产毛多水多女人A片| 少妇伦子伦精品无吗| 超碰在线视屏| 亚洲精品视频在线| 99精品在线观看| 婷婷伊人久久| 久久综合这里只有精品1| 五月婷婷丁香啪啪| 五月丁香婷婷在线| 91啪啪视频| 丁香五月激情宗合网| 大香蕉99热| 色婷成人狠干| 99riAv1国产在线观看| 嘿嘿视频免费看9| 99精品无码网站| 成人精品视频99在线观看免费| wwW天天干| 婷婷开心激情| 激情亚洲色图片丁香综合| 五月天成人综合| 丁香五月在线伊人| 成人无码髙潮喷水A片| 欧美综合激情五月丁香| 国产91资源在线| 婷婷五月开心中文字幕色| 国产AV国片偷人妻麻豆| 五月婷婷天| 久久精品五月| 婷婷五月天久久久| 天天粽合合合合| 国产精品久久久爽爽爽麻豆色哟哟| 严洲天天插| 久久男人网婷婷| 天天爽天天日| 丁香五月图片| 丁香社92视频| 天天肏视频| 轮奸综合网| 色五月激情综合网| 人人爱人人添| 色五月婷婷av| 影音先锋美国A| 99色 色| 欧美婷婷九月| 狠狠色综合网| 狠狠色综合精品视频在线| 96精品久久久久久久久| 国产乱妇乱子在线播视频播放网站| 成人精品99| 99免费青青蜜臀| 99热亚洲| 五月婷婷手机在线| 亚洲精品国产成人AV在线| 深爱激情五月网| 79成人网| 69久久99精品久久久久婷婷| 嫩草AV久久伊人妇女超级A| 三十路磁力链接| 9一精品视频观看| 激情六月丁香| 激情内射p| 26uuu精品一区二区| 中文字幕在线观看视频www| 五月丁香久久丝袜啪啪| 婷婷五月大| 激情五月四色| 97色碰| 欧美综合五月丁香五月天| 欧美WW在线网| wwwav大香蕉| 丁香五月av| 狠狠色丁婷婷日日,伊人激情综合网| www.99操| 欧美丰满熟妇BBB久久久| 久久a热| 亚洲99激情| 香蕉操亚洲| 丁香桃色综合网| 婷婷久久图片| 99热香港| 202丰满熟女妇大| 亚洲色婷婷| 五月天成人在线视频丁香| 久久精品日| www婷婷| 夜夜干 夜夜操| Av狠狠色丁香婷| 97精品综合久久内射| 亚洲天堂热| 久久久免费精彩视频| 亚洲视99| 超碰在线视屏| 五月丁香六月激情综合| 狠狠色丁香婷婷| 色色丁香| 九九色影院| 人人爱摸视频| 色播五月| 天天插插天天| 色色免费网战视频| 天天操夜夜肏| 狠狠999| 激情久久久久久| 久久九九99.www| 国产成人片| 婷婷色五月丁香六月欧美啪| 色~性~乱~伦~噜| 精品久久9| 久久九九99视频| 婷婷丁香六月| 丁香五月婷婷网| 婷香五月激情视频| 五月丁香六月婷婷姐| 天天色,天天操,天天射| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | www.婷婷com| 久综合网| 婷婷五月丁香五月| 久久99久久99久久99人受| 欧美日本黄色| 婷婷综合激情| 99操视频| 免费精品99| 99精在线| 色欲久久综合| 久久婷婷激情视频| 99视频这里有精品免费观看| 婷婷五月天六月| 色婷婷五月天激情综合| 天天天日天天天干| 美女美女美女三级色天天天天天| 色五开心五月五月深深爱| 色久五月| 人人射人人高潮| 伊人久久五月天综合| 狠狠干激情五月| 人妻videos人妻高清| 电影蜘蛛女| 人妻内射麻豆视频| 婷婷丁香激情五月天色色| 九九久久99| 五月天激情婷婷五月天久久| 久久机热思思热| 五月丁香在线看| 久久这里有| 激情深爱五月| 五月丁香婷婷综合久久| 99这里| 日本va欧美va国产激情| 日本乱子人伦在线视频| 五月丁香六月停停停| 日噜噜色| 香蕉久久国产AV一区二区| 婷婷亚洲五| WWW色综合| 五月丁香999| 99综合99| 99精品综合视频| 久9精品视频| www.婷婷| 婷婷五月天综合亚洲| cao视频,现在观看| 欧美va视频| 五月花综合网| 五月激情五月婷婷五月天在线| 亚洲视色| www色婷婷| 91|疯狂丨高潮丨对白| 99精品偷自拍| 综合色网站| 色色五月天婷婷| 都市激情五月婷婷综合| 深爱激情综合网| 97干视频在线| 国产乱子轮XXX农村| 久久综合九色综合88i| 91人人网| 天天操狠狠操| 色偷偷AV亚洲男人的天堂| 丁香婷婷九月在线| 性爱激情五月| 亚洲AV成人片无码网站| 婷婷五月天亚洲综合网| 狼人婷婷久久| 99五月香婷婷丁香在线视频| 99ri精品| 婷婷五月丁香香蕉| 欧美一级色| 九九伦子片| 色色五月天网站| 欧美激情xxxXX| 天天射影院| 天天日天天爽| 影视av久久久噜噜噜噜噜三级| 五月天成人在线视频丁香| 女高怪谈在线观看| 免费视频WWW在线观看网站| 日韩成人电影Av| 丁香五月天天哦| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 五月天激情视频| 3DAV亚洲香蕉久久 一区二区| 精品久久99码| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 亚洲激情AV| 第四色26uuu| 操碰91| 潮汕成人AV片在线| 99rewww| 久99久热| 色色五月天com| 美臀自射自家人妻| 丁香五月天激情视频| 另类图片五月天激情| 七七九九色色| 色婷婷狠狠| 天天干,天天操,天天射| 婷婷色情五月| 久久综合婷婷激情| 婷婷五月天va| 天天综合精品| 丁香色六月| 五月婷婷影院| 狠狠九九婷婷韩| 婷婷丁香成人网址| 中字幕视频在线永久在线观看免费| 亚洲成人高清在线| 丁香激情五月| 亚洲一区二区无遮挡A片| 五月婷婷丁香综合网| 专区无日本视频高清8| 内射综合网| 天天摸天天做天天爱天天爽| 日韩久久欧亚| 婷婷五月激情五月激情| 婷婷天堂综合网| 99热日本| 超碰婷婷色| 国产精品噜噜在线视频| 五月天偷拍| 婷婷综合| 欧美日韩aaa| 九九久久五月天| 五月天丁香婷| 六月丁香av| 99九九在线视频| 久久久久久久五月| 97热这里只有精品| 五月激情射| 97操碰在线视频| 9色免费网| 另类综合婷婷五月天欧美视频| 亚洲五月六月婷婷| 丁香五月婷婷色| 丁香深五月婷婷| 五月激情婷婷开心| 无码九九九九| 伊人超碰| 婷婷久久五月| 69超碰在线| 六月色五月天天婷婷| 日本欧美成人片AAAA| 99热在线里有精品| 丁香五月婷婷激情97| 色色日韩无码| 综合激情九月婷婷,激情综合婷婷中文字 | 五月婷婷啪啪啪| 99无码超碰| 色亚洲无码| 99九九久久| 久久黄色网扯| 国产干逼片| jizzdr| 成人在线综合| 婷婷伊人网| 久久九九99字幕| 丁香色婷婷色手机免费在线| 色婷婷五月天| 伊人婷婷青青cao| 欧美操人| 噜噜色com| 色吊丝永久访问网址| 97操碰碰无码视频| 九九热九九热精品| 丁香97综合| 噜噜操操| 337p午夜影院| 亚洲操B视频| 综合久久婷婷| 六月丁香激情婷婷| av在线激情| 亚洲中文字幕av| 五月婷婷丁香六月在线| 亚洲无码黄色| 激情综合五月丁香| 色婷婷成人| 超碰精品在线| 色天使久久综合| 91视频五月丁香| 五月天婷婷黄色视频| 婷婷综合中文字幕| www久久99| www,五月丁,com| 青青久久大香蕉| 亚洲天堂色色| 直接看的AV| 欧美一级色| 丁香五月影| 欧美天堂久久| 色色色欧美色色| 99碰网站| 91婷婷视频| 激情综合网五月丁香| 欧美丁香六月激情视频| 国产激情AV| 波多野结衣不卡AV| www.超碰在线| 狠狠操狠狠| 天天天天天色| 情色五月天网站| 久热re视频在线观看网站| 五月丁香综合啪啪| 这里只有精品免费视频| 热久久77777| 91操屁股| 久热久69| 99ER热精品视频| 亚洲婷婷基地| 丁香五月婷中字幕| 日韩婷婷五月天| 爆乳熟妇一区二区三区爆乳照片| 91碰免费视频| 国产古装妇女野外A片| 久热99热| 很很干夜夜干| 色色色色色爱| 另类小说五月天综合网| 国产韩日亚洲美州欧亚综合在线| 任你日热视频| 任我肏视频精品| 婷婷中文字幕| 免费视频无码| www.99热| 人妻AV在线观看| 26uuu亚洲欧美日本| 色色色在线免费视频| 色五月天堂| 一级无码作爱片| 国产美女无遮挡裸体毛片A片| 大香蕉五月婷婷| 51avj视频大全| 开心五月婷婷激情网| AV九九| 九色自拍| 色婷婷激情| 99草在线免费观看视频| 国内精品99| 国外亚洲成AV人片在线观看| 99免费在线视频| 99热99干| 色99在线视频| 天天干天天做| 色99在线| 中文字幕日产A片在线看| 直接看的av| 五月丁香黄色视频| 综合婷婷| 丁香五月六月| 日本乱子人伦在线视频| 五月综合久久| 精品一二三区久久AAA片| 婷婷六月丁香五月| 久久婷婷影院| 亚洲V国产V欧美V久久久久久| 97色干| 六月色色| 一点色成人网| 日日夜夜九九| 狠狠色婷婷色| 婷婷在线综合| 精热在线综合网| 丁香 婷婷 激情 综合 五月| 另类五月婷婷| 99亚洲大片精品永久在线观看| 婷婷色五月色妇| 小视频一区| 思思久久青草热| 欧美啄木乌丝袜人妻系列| 激情五月天开心总和网| 久久人妻视频| 九九99精品视频在线观看| 色噜噜狠狠一区二区三区| 精品人妻伦一二三区久| 香蕉人妻AV久久久久天天| 日本人妻伦在线中文字幕| 国产伦亲子伦亲子视频观看| 国产女人十八水真多1| 婷婷丁香综合色AV| 99干日本| 综合狠狠五月婷婷| 丁香五月777| 另类精品视频在线观看| 激情五月天婷婷免费观看| 一本道综合网| 婷婷狠狠操| 欧美影院婷婷| 国产真人做爰视频免费| 99精品网址| 国产精品日日躁夜夜躁| 亚洲精品操一操、噜一噜、摸一摸、爽 | 免费97碰碰| 俺去也五月| 激情内射人妻1区2区3区| 91精品91久久久久77777| WWW.久久久久久久久久久久久| 99久热在线精品| 色五月婷婷丁香国产在线| 在热视频精品| 天天天天天日| 午夜AV网| 五月天久久久| 色婷婷色五月天| 99热6这里只有精品| 国产XXXX搡XXXXX搡麻豆| 一区二区三区XXXXXX| 97操碰| 日日夜夜小色哥| 色丁香五月| 欧美大片| 婷婷丁香九月| 97五月天婷婷| 婷婷五月天伊人网| 嫩草哈哈操| 五月婷婷另类| 色五月婷婷九月| 婷婷五月天综合网| 婷婷色偷拍| 另类图片五月天婷婷| 天天色天天| 精品一区二区三区免费毛片爱| 亚洲秘 无码一区二区三区妃光/1| 97福利视频| 九九99在线| 成人小说 五月天 婷婷| 五月丁香激情四射| 国产精品A片在线| 夜夜爽天天| www.yw色| 综合久久五月| 久久九九99字幕| 91久久久久久久久18| 久久日本wwww色| 丁香五月激情天AV无码| 五月丁香综合中文| 九月停停| 婷婷中文字幕版| 激情五月天 婷婷| 性爱七区| 色五月第四色| 99超超碰| 激情影院内射| 国产成人网站在线观看| www.99免费视频| 亚洲男人的天堂婷婷色五月| 九九热超碰| 日韩啪| 精品人妻久久久久| 婷婷丁香五月天综合激情| 色色色色色热| 九色视频91| 玖玖婷婷色五月| 五月激情婷婷开心| 色婷婷激情Av久久久| 婷婷激情伍月网| 综合久久高清| 亚洲无aV在线中文字幕| 五月婷在线播放| 极品人妻VIDEOSSS人妻| 精品9久| 热热久久久久久久久| 夜夜操狠狠操| 婷婷色网| 26uuu国产| 91丨九色丨国产打屁股| 亚洲色碰| 日本三级韩三级99久久| 中文字幕在线免费观看视频| 狼人狠狠操| www.色九月| 欧美日韩五月婷婷| 五月婷婷综合在线| 偷拍91九色| 天天草天天爽| 久久婷丁香五月| 婷婷中文字幕网| 欧美日本高清视频99| 中文AV网站| 色色色色色色色色色色色色色五月天| 日本五月婷婷| 欧美成人日韩| 亚州操操| 人妻久久久久| 日本精品久久久久中文字幕| 天天网站天天爽| 中字幕视频在线永久在线观看免费| 婷婷丁香五| 熟妇内谢69XXXXXA片| 人妻videos人妻高清| 色日本颜射| 丁香激情婷婷网| 色婷婷色综合| 蜜桃人妻无码AV天堂三区| 激情五月天啪啪| 色情五月综合婷婷| 99热这只有| 影音先锋五月婷婷| 久久久久久久人妻| 日韩成人电影AV| 六月婷婷五月丁香| 亚洲性爱99在线| 亚洲天堂色| 99视频久久| 六月色播| 色婷婷成人做爰A片免费看网站| 婷婷六月天精品| 大香蕉久久久久久久久| 性欧美日本| 18av天堂| 久久91久久精品久久| 色色A| 大香蕉精品视频| 婷婷五月天小说| 婷婷五月天婷婷| 69精品人妻不卡视频| 色狠狠综合| 婷婷亚洲丁香五月| 超热久碰.com| 天天日天天爽| 99热精品在线播放| 中文字幕在线播放视频| 秋霞少妇AV网站| 开心婷婷中文字幕| 99视频精品视频| 亚洲欧美日韩另类| 婷婷五月激情丁香| 五月婷AV| 亚洲国产成人综合| 大香蕉AV电影在线| 91色在线/日韩| 热99视频| 色婷操逼| 92久久久| 五月综合视频| 亚洲操操操| 欧美色狠婷久| 天天网曰日曰夜夜综合永久免费| 综合色色色| 26uuu精品国产| 狠狠色婷婷在线| 色五月色五天色情网址| 久久99综合| 五月欧美丁香在线观看| 丁香伊人激情| 九九99免费理论| 91在线人| 夫妇交换刺激做爰| 伊人久久婷婷| xx人人xx| 俺去也在线www色官网| 丁香婷婷久久 | 五月天四色房丁香| 久99热| 日本三级网址| 毛片九九九九九九九九18| 五月叮香啪| 99热这里只有精品在线观看| www.操逼comm| 97人人干人人操| 色色丁香五月天社区| 91|疯狂丨高潮丨对白| 色五月婷婷久久| 人人干av| 五月亭亭综合五码| 五月综合婷婷网| 久久三级视频| 丁香婷婷超碰 | 91日韩在线| 狠狠色噜噜狠狠狠狠综合| 色狠狠色狠狠| 99在线观看这里都是精品| 色色五月天网站| www.五月婷| 99re8热精品免费视频| 婷婷在线视频| 五月天六月色| 91色婷婷综合久久中文字幕二区| 天天色天天操天天射| 丁香五月婷婷在线视频| 逼逼AV| Av性爱网站| 色婷婷基地| 日韩啪| 丁香六月婷婷久久高清| 五月激情婷婷国产精品久久久久久| 激情综合五月丁香六月婷婷| 国产日产亚洲系列最新| 国产成人精品一区二三区熟女在线| 婷婷五月无码| 在线日韩视频| 久久综合五月| 激情五月天电影| 精品久热| 五月丁香婷婷成人网| 99热在线中文字幕| 色射影院| 激情小说五月天| 国产亚洲在线观看| 日韩无码色色| 久久免费精彩视频| 成人在线99| 99免费在线视频| 99精彩视频| 久久怡红院| 国产精品激情AV久久久青桔| 无码激情AAAAA片-区区| 久久精品A片777777| 电影91久久久| Www.Av网9| 色99婷婷五月天| 五月婷婷六月丁香玖玖玫瑰91| 久久精品日| 亚洲免费av观看| 99久超碰| 超碰碰碰碰| 99re这里只有精品9| 六月婷婷狠狠| 五月天狠狠干| 日婷婷| WWW99热| 91成人性爱视频| 欧美性爱五月天| 亚洲国产精品二二三三区| 超喷97免费在线视频| 久久久精品免费啪啪国| 色婷婷综合在线| 一区二区免费看| 亚洲免费看片| 天天综合干| 婷婷中文字暮| 色色狼人综合| 91蜜桃婷婷狠狠久久综合9色| 九九日伊人| 色婷婷综合在线| 色婷婷AAA| 99高级会所久久| 伊人深爱综合| 99热国内精品| 日日日日日| 91 久热| w婷婷五月婷婷w| 日本va欧美va精品发布视频| 色99欧洲色19| 亚洲第一成人无码A片| 日韩婷婷| 人人操操97| 另类激情综合| 精品一区二区三区木瓜| 97色色网| 亚洲婷婷五月天| 丁香五月婷婷久久久| 激情久久综合| 操操操操操电影网| 五月丁香综合激情网| 成人看片网站| 亚洲狠狠婷婷| 9999热精品在线免费播放| 中文字幕婷婷五月天在线观看| 国产97色在线 | 日韩| 中文字幕在线免费观看视频| 婷婷五月欧美| 激情六月丁香综合| 天天干 夜夜爽| 久久xxxx| 另类国产区| 电影爱拉战争免费观看| 狠狠色噜噜狠狠狠888| 久久综合激情| 婷婷色操| 色99综合视频| 五月激情六月宗合| 久久婷婷网址| 激情综合综合综合| 碰97久久| 两性婷婷丁香五月| 这里只有精品视频222| 丁香五月婷婷色| 99日韩| 激情五月天啪啪| 中文字幕久久一区二区三区| 亚洲天天| 婷婷五月天综合AV| 99精品无码网站| 四色五月婷婷| AAA久久久AAA久久久AAA| 蜜乳国产网站| 日韩婷婷| 成人亚洲精品| 这里只有精品免费| 欧美日韩成卜| 色色日韩| 亚洲AV网址| 91综合网| 婷婷五月激情在线| 一级黄色影片| 婷婷色丁香五月| 婷婷五月天激情开心网| 婷婷操无码| 九九热这里都是精品6| 另类图片激情五月| 玖色色综合| 久久66成人网站| 婷婷中文字幕| www.99视频| 狠狠99| 婷婷色偷拍| 久久黄色片| 久久婷婷超碰| 久热这里精品免费| 99精品在线| 久热这里只有精品3| 91爱啪啪| 久久婷丁香五月| 久久视频婷婷| 超碰在线超碰| 婷婷成人五月天| 欧美色色日韩| 夜丁香综合| 婷婷性爱五月天丁香网| 丁香五月六月欧美| 4438亚洲欧美| 久久久久99精品成人片| 久久精品99国产精品日本| 噜噜色五月| 欧美日韩91| 亚洲色色图片| 人妻丰满精品一区二区A片| 六月色婷婷色| 婷婷综合视频| 久久综合热17c| 中文字幕无码人妻少妇免费视频 | 五月婷婷六月丁香激情综合网| 日本天天色| 精品婷婷五| 桃色五月天| 中文字幕婷婷五月天| 婷婷丁香五月综合| 日本三级黄色大片| 激情五月五月婷婷| 99热永久在线观看| 开心五月激情网| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 五月婷婷婷丁香播| 六月撸婷婷| 超碰人人操人人干| 久久久妻人人人| 欧美成人AAA片一区国产精品| renre人人操国产超碰在线| 九七色色六月丁香| WWW五月| 九月色婷婷综合| 五月色色网| 日本色频| 精品一二三区久久AAA片| 天天综合亚洲综合| 天堂网色婷婷| 欧美va视频| 久久久妻人人人| 三级av在线| 四色五月婷婷在线观看| 伦99热| 人人摸人人摸| 亚洲婷婷丁香五月亚洲| 九月停停| 日本久久性| 激情综合五月激情17| 中文字幕丰满孑伦无码专区| 激情五月婷在线精品| 婷婷色片| 99热免费在线| 我爱va亚洲va52| 丁香五月综合久久| 五月天综合久久| 五月天激情无码高清| 婷婷五月天AV在| 国产亚洲在线观看| 六月婷婷七月丁香| 大香蕉啪啪啪啪啪啪| 午夜一区| 亚洲精品色色色| 色爱99| 26uuu国产| 99成人免费热视频| 草草视频91| 99这里都是精品6| 色五月久久成人婷婷| 天堂久久婷婷| 色婷婷成人丁香| www.色欲丁香婷婷| 超碰91在线| 日日夜夜噜噜爽爽| www.99日本| 99热在线观看| 激情综合激情综合| 99精品视频在线6| 超碰五月婷婷五月天| 超碰免费在线| 丁香五月天视频在线播放| 五月天丁香综合| 日本eVa一区=区视频| 婷婷五月天激情电影| 97色五月天| 五月丁香激情综合六月涩涩爱| 人妻AV在线| 99色在线| 综合性视频99| 在线观看的av| 成人va在线| 99久热| 丁香六月婷婷综合缴| 开心婷婷五月激情网小说| 婷婷狠狠狠爱| 粉嫩AV久久一区二区三区| 婷婷丁香六月天| 天天做天天要天天爽| 综合久久高清| 五月丁香婷婷钟和色图| 啪啪啪大香蕉| 欧美五月丁香| 伊人久久婷婷五月天激情四射| 亚洲性爱电影| 久久九九99视频| 开心五月婷婷激情| 丁香婷婷色九月| 五月丁香无码视频| 99成人精品六| 色999;丁香五月| www.爱婷婷.com| 99热个人在线| 色播五月天激情| 色在线99| 亚美欧色影院| 色五月视频无码播放| jiqingtaose五月天| 天堂综合久久| 婷婷五月日本| 亚洲中字AV电影在线网站| 99热在线观看免费精品| www.色综合.com| 99re思思久久| 丁香六月成人网| 久久久久婷婷五月热综合| 六月丁香综合| 伊人9在线| 亚洲视频另类| 岛国在线观看91| 另类天堂| 色婷婷五月在线| 天堂中文国产| 国产精品久久久海的味道| 五月丁香激情欧洲啪啪| 啄木鸟黑丝一区二区| 国产婷婷色五月| 91综合国免费久入| 99热综合在线| 97人妻碰碰碰久久香蕉| 丁香久月| 美欧成人视频| 一级性感毛片| 99久久婷婷综合| 91碰碰视频在线观看| 天天躁日日躁狠狠躁日日躁2022年5月9日| 久久女婷| 99热成人| 丰满少妇猛烈A片免费看观看| 免费精品99| 最近中文字幕大全免费版在线| 九九热精品视频在线观看| 小视频久久久aaa| 97人人干| 高清无码视频网址| 五月天婷婷基地| 91啪啪视频| 天天干天天插| 丁香五月偷拍| 亚洲V国产V欧美V久久久久久 | 久久这里只有精品无码| 九九草热在线观看| 亚洲综合婷婷| 五月婷婷伊人久久| 99热在线观看免费| 婷婷五月天成人综合网| 久久这里只| 人妻久久人妻久久第一区| 丁婷婷五月天在线播放| 噜噜狠狠色综合久| w婷婷五月婷婷w| 日本啪啪天堂| 97色色色色色| 欧美成人精品A片免费一区99| 六月丁丁香| 久久婷婷综合五月| 色婷婷精品视频在线播放| 欧美超碰亚洲| 一起草无码| 欧美一级色| 五月天无码视屏播放| 天天艹天天色| 婷婷五月激情视频在线| 色婷婷五月天成人网| 丁香六月啪| 91操操| 亚洲成人在线在线| 五月婷婷色白丝| 青青草原亚洲天堂| 五月丁香网av| 久久人人人人妻| 久久九九免费视频| 丁香花五月天激情| 五月天综合| 青吴乐视频| 欧美视频五区| 99惹在线精品免费观看| 婷婷五月丁香婷婷| 天天干天天干天天干天天干天天干| 色五月天丁香| 99热这里有精品| 丁香五月激情啪啪啪| 日良久久| 五月天色综合服务平台| 激情五月丁香亭亭| 国产成人亚洲综合A∨婷婷| 强辱丰满人妻HD中文字幕| 丁香婷婷久久综合在线| 亚洲综合视频网| 五月色婷婷综合丁香精品无遮挡| 丁香五月婷综合网| 美日韩成人| 啪啪日本欧美| 91九色丨国产丨爆乳| 婷婷久久五月天亚洲欧美国产日韩在线观看| 婷婷五月丁香综合人妻| 激情久久肏屄视频| 丰满少妇猛烈A片免费看观看| 免费超碰在线| 9九热视频| 婷婷五月天在线一区| 人妻内射视频| 变态另类色图| 色久婷婷五月| 夜丁香综合| 六月丁香五月婷婷| 免费观看日韩成人av| 久久五月丁香婷婷| 色欲久久久久| 六月婷婷色综合| 99热69| 婷婷五月欧美综合| 激情五月天啪啪| 日日操夜夜擼| 91超碰在线观看| 婷婷五月天偷拍| 另类激情综合| 久久加勒比| 99爱视频在线免费观看| 五月婷婷黄色| 久久丁香网| 思思99精品视频| 99在线精品视频| 苗黎美女四级成人版一级二级毛片| 4399人妻无码久久久| 五月天激情综合10p| 色婷婷电影网| 97婷婷五月激情六月丁香伊人| 99热九九这里只有精品10| 97色永久免费视频| 色婷婷精| 狠狠色丁香99| 色情婷婷| 国产九九一区二区三区| 亚洲中文乱字字幕线在永久| 开心五月婷婷激情| 91丨人妻丨国产丨丝袜| 五月婷婷丁香大陆免费| 婷婷色色五月天| 五月丁香九九| 色婷婷激情五月天在线观看| 五月丁香色婷婷| 91久久久久久| 第四色大香蕉| 天堂va久久久噜噜噜久久Va| 五月丁香网中文字幕| 九九99精品视频在线观看| 丁香五月先锋| 婷婷色激情五月天| 在线播放人妻| 成人色站,在线视频,看片-SS1AV| www.99久久久| 第四色五月婷婷| 五月综合无码| 亚洲天堂制| 小视频一区| 青柠影视免费高清电视剧 | 国产色香蕉精品五夜婷| 九九热区一区二区三区| 五月天六月丁香| 超碰99资源站| 99综合成人视频在线观看| 黄色99网| 乱精品一区字幕二区| 一夜福利不卡| 99激情| 综合久久婷婷| 五月婷婷AV| 五月丁香激| 色情五月婷| 秋霞日本免费毛片A片| 99精品视频网站| 五月久久| 婷婷婷婷婷开心无码播放| 日韩av高清| 五月婷婷二月丁香| 伊人激情综合| 丁香五月在线看| H亚洲| 五月婷视屏在线观看| 亚洲123区高清入口| 五月停停激情网| 91丨九色丨国产| 五月丁香六月情亚洲| 91呦呦呦| 五月天激情无码| 超碰成人在线免费观看| 久久精热| 色五月97| 成人电影在线免费试看| 久草A片| 久热免费视频| 日韩一66精品| 综合AV网| 永久AⅤ1| 在线综合91| 五月婷婷|欧美| 91人妻人人做人碰人人爽九色| 色九月| 久久这有这里精品| 99婷婷狠狠成为人免费视频| 日日夜夜噜噜爽爽| 97超级碰碰碰久久久| 亚洲色婷婷五月天| 香蕉狠狠爱视频| 久热这里| 成人狠狠成人狠狠成人狠狠成人狠狠| 激情五月黄色| 99热这里只有精品3| 噜噜操操| 色色色色色色网| 婷婷丁香六月影视| 天天干天天日蜜臀av| 九九热视频精品| 操九色| 99热66| 天天檫天天爽| 99在线视频女女视频| 亚洲中文字幕av| 色天天狠狠干| 99爱在线| 色五月婷婷综合在线| 桃色五月婷婷| 丰满少妇乱A片无码| 天天操天天操天天操天天操天天操天天操| 99热狠狠操| 中文av网| 五月天激情社区| 亚洲激情综| 国产99久久久国产精品免费看| 国产精品A片| 日韩精品超碰在线观看| 1024人妻| 婷婷夜夜操| 丝袜大香蕉| 韩国中文字幕91| 久草狼人| 亚洲欧洲色色| 婷婷五月丁香激情图片 | 五月婷无码| 久草婷婷视频| 99婷婷| av免费人人| 色九网| 视频一区二区在线| 色综合久久久久| 激情综合丁| 日本久久高清| 久久婷婷五月天丁香| 欧美三级欧美一级| 五月婷六月丁香| 亚洲无码播放|