国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

基于SpringBoot與Vue的高校選課系統(tǒng):高并發(fā)搶課與數(shù)據(jù)一致性實現(xiàn)

基于SpringBoot與Vue的高校選課系統(tǒng):高并發(fā)搶課與數(shù)據(jù)一致性實現(xiàn) 簡介這份資源是面向高校計算機相關(guān)專業(yè)學(xué)生與Java開發(fā)學(xué)習(xí)者的畢業(yè)設(shè)計參考項目聚焦高校學(xué)生選課系統(tǒng)的完整實現(xiàn)方案可幫助讀者理解前后端分離架構(gòu)下的選課業(yè)務(wù)落地思路。項目后端以Java語言結(jié)合SpringBoot框架搭建數(shù)據(jù)庫采用MySQL 5.7持久層使用MyBatisPlus前端基于Vue.js與ElementUI構(gòu)建交互界面并通過Maven統(tǒng)一管理依賴整體遵循B/S模式瀏覽器即可訪問。壓縮包共695個文件約16.2MB其中131個java源文件承載核心業(yè)務(wù)邏輯98個vue文件對應(yīng)前端頁面組件另有xml配置、js腳本、css樣式、jpg與png圖片資源及sql相關(guān)文件等覆蓋從后端接口到前端展示的完整代碼結(jié)構(gòu)。系統(tǒng)涵蓋學(xué)生與教師賬戶維護(hù)、課程發(fā)布編排、選課執(zhí)行與沖突檢測、選課結(jié)果確認(rèn)查詢等模塊并支持教師上傳圖片、視頻等多媒體教學(xué)資源。目前已有74人學(xué)習(xí)適合需要選課系統(tǒng)賽題方案、代碼參考與架構(gòu)學(xué)習(xí)的技術(shù)人員。1. 選課系統(tǒng)為什么總在開學(xué)第一分鐘崩從標(biāo)題拆出真實戰(zhàn)場每年開學(xué)季教務(wù)系統(tǒng)崩上熱搜幾乎成了固定節(jié)目。學(xué)生掐著點刷新頁面轉(zhuǎn)圈選課按鈕點下去沒反應(yīng)等終于進(jìn)去了想選的課已經(jīng)滿了。這不是段子是很多高校教務(wù)處的真實壓力測試?;?SpringBoot 與 Vue 的高校學(xué)生選課系統(tǒng)設(shè)計與實現(xiàn)本質(zhì)上要解決的就是這個問題在高并發(fā)搶課場景下保證課程容量不被超賣、每個學(xué)生的選課結(jié)果準(zhǔn)確、系統(tǒng)在壓力下不雪崩。這個標(biāo)題適合兩類人一是正在做課程設(shè)計或畢業(yè)設(shè)計的計算機專業(yè)學(xué)生需要一套能跑通、能講清楚技術(shù)選型理由的完整方案二是剛?cè)胄械?Java 工程師想通過一個真實業(yè)務(wù)場景理解 SpringBoot 后端與 Vue 前端的協(xié)作方式。選課系統(tǒng)看起來簡單但它是典型的“讀多寫少、瞬時并發(fā)高、數(shù)據(jù)一致性要求嚴(yán)”的場景把這個問題吃透比做十個增刪改查的練手項目都有價值。我見過太多選課系統(tǒng)的實現(xiàn)停留在“能選就行”的層面結(jié)果一壓測就原形畢露。下面從架構(gòu)選型開始一步步拆到能復(fù)現(xiàn)的程度。2. 技術(shù)選型與項目骨架為什么是 SpringBoot Vue 而不是別的2.1 后端選 SpringBoot 的三個實際理由選型不是追新是算賬。高校選課系統(tǒng)的后端需求很明確快速開發(fā)、內(nèi)嵌容器部署、生態(tài)成熟。SpringBoot 在這三點上都是當(dāng)前 Java 生態(tài)里最穩(wěn)的選擇。第一自動配置省掉了大量 XML。選課系統(tǒng)涉及數(shù)據(jù)庫、緩存、消息隊列、定時任務(wù)如果用傳統(tǒng) Spring光配置文件就能寫幾百行。SpringBoot 的 starter 機制把這些都封裝好了引入spring-boot-starter-data-redis就自動配好連接工廠引入spring-boot-starter-web就自動配好 DispatcherServlet。對于課程設(shè)計這種周期緊、人手少的場景省下來的時間可以花在業(yè)務(wù)邏輯上。第二內(nèi)嵌 Tomcat 讓部署變簡單。傳統(tǒng) WAR 包要裝 Tomcat、配 server.xml、調(diào) JVM 參數(shù)SpringBoot 打成可執(zhí)行 JAR 后java -jar就能跑。配合 Maven 或 Gradle 插件構(gòu)建和啟動一條命令搞定。我一般用 Maven因為高校環(huán)境里 Maven 的教程和鏡像配置更普及。第三Spring 生態(tài)的中間件整合成本低。選課系統(tǒng)需要 Redis 做緩存和分布式鎖需要 RabbitMQ 或 RocketMQ 做異步削峰需要 MyBatis 或 JPA 做持久化。這些在 SpringBoot 下都有官方或社區(qū)維護(hù)的 starter版本兼容性由 Spring 官方 BOM 統(tǒng)一管理不會出現(xiàn)“這個庫依賴那個版本、那個庫又沖突”的玄學(xué)問題。注意SpringBoot 版本不要盲目追最新。3.x 要求 Java 17 起步很多學(xué)校機房還停留在 Java 8 或 11。如果課程設(shè)計環(huán)境不可控選 SpringBoot 2.7.x 更穩(wěn)妥它支持 Java 8 到 Java 17兼容性最好。2.2 前端選 Vue 的考量與工程結(jié)構(gòu)Vue 的核心優(yōu)勢是上手快、組件化清晰、與后端分離徹底。選課系統(tǒng)的前端頁面不算復(fù)雜登錄頁、課程列表頁、選課結(jié)果頁、管理員排課頁。用 Vue 3 的 Composition API 可以把每個頁面的邏輯收攏在setup里配合 Vue Router 做路由守衛(wèi)控制權(quán)限配合 Pinia 做全局狀態(tài)管理比如存儲當(dāng)前登錄用戶信息和已選課程 ID 集合。項目骨架我一般這樣組織course-selection/ ├── backend/ # SpringBoot 后端 │ ├── src/main/java/com/example/selection/ │ │ ├── controller/ # 接口層 │ │ ├── service/ # 業(yè)務(wù)邏輯層 │ │ ├── mapper/ # MyBatis 數(shù)據(jù)訪問層 │ │ ├── entity/ # 數(shù)據(jù)庫實體 │ │ ├── dto/ # 數(shù)據(jù)傳輸對象 │ │ ├── config/ # 配置類Redis、RabbitMQ、CORS │ │ └── SelectionApplication.java │ ├── src/main/resources/ │ │ ├── application.yml # 主配置 │ │ └── mapper/ # MyBatis XML │ └── pom.xml ├── frontend/ # Vue 前端 │ ├── src/ │ │ ├── views/ # 頁面組件 │ │ ├── components/ # 通用組件 │ │ ├── router/ # 路由配置 │ │ ├── store/ # Pinia 狀態(tài) │ │ ├── api/ # Axios 封裝 │ │ └── main.js │ ├── package.json │ └── vite.config.js └── README.md前后端分離的關(guān)鍵是接口約定。我習(xí)慣用 RESTful 風(fēng)格選課相關(guān)接口大致如下接口方法路徑說明獲取課程列表GET/api/courses?page1size20分頁查詢支持按名稱模糊搜索選課POST/api/selections請求體含 courseId從 Token 解析 studentId退課DELETE/api/selections/{courseId}邏輯刪除釋放容量我的選課GET/api/selections/my返回當(dāng)前學(xué)生已選課程管理員排課POST/api/admin/courses需要 ADMIN 角色2.3 數(shù)據(jù)庫表設(shè)計的最小可用集合表設(shè)計直接決定后面能不能扛住并發(fā)。核心就三張表學(xué)生表、課程表、選課記錄表。課程表里必須有一個capacity字段表示容量一個selected_count字段表示已選人數(shù)。選課記錄表用(student_id, course_id)做聯(lián)合唯一索引防止重復(fù)選課。CREATE TABLE course ( id BIGINT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(128) NOT NULL, teacher VARCHAR(64) NOT NULL, capacity INT NOT NULL DEFAULT 0, selected_count INT NOT NULL DEFAULT 0, start_time DATETIME, end_time DATETIME, version INT NOT NULL DEFAULT 0, INDEX idx_name (name) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4; CREATE TABLE selection ( id BIGINT PRIMARY KEY AUTO_INCREMENT, student_id BIGINT NOT NULL, course_id BIGINT NOT NULL, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, UNIQUE KEY uk_student_course (student_id, course_id), INDEX idx_course (course_id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;version字段是樂觀鎖用的后面講并發(fā)控制時會展開。selected_count和capacity放在同一張表是為了在一條 UPDATE 語句里完成“判斷容量 扣減”的原子操作。3. 選課核心鏈路從點擊按鈕到數(shù)據(jù)落庫的完整實現(xiàn)3.1 選課接口的并發(fā)控制樂觀鎖 Redis 預(yù)扣選課最怕超賣。假設(shè)課程容量 50當(dāng)前已選 49兩個請求同時進(jìn)來都讀到 49都判斷小于 50都執(zhí)行加一結(jié)果變成 51。這就是典型的并發(fā)問題。解決方案分兩層。第一層用 Redis 做預(yù)扣把課程容量緩存到 Redis用 Lua 腳本保證判斷和扣減的原子性。第二層用數(shù)據(jù)庫樂觀鎖兜底防止 Redis 數(shù)據(jù)丟失或不一致。先看 Redis 預(yù)扣的 Lua 腳本-- keystore: course:stock:{courseId} -- argv[1]: 本次選課數(shù)量通常為 1 local stock redis.call(GET, KEYS[1]) if not stock then return -1 -- 緩存不存在需要回源 end if tonumber(stock) tonumber(ARGV[1]) then return 0 -- 庫存不足 end redis.call(DECRBY, KEYS[1], ARGV[1]) return 1 -- 預(yù)扣成功這段腳本在 Redis 單線程模型下執(zhí)行天然原子。返回 -1 表示緩存沒命中需要從數(shù)據(jù)庫加載后重試返回 0 表示沒搶到返回 1 表示預(yù)扣成功可以繼續(xù)走數(shù)據(jù)庫寫入。Java 側(cè)調(diào)用public SelectionResult selectCourse(Long studentId, Long courseId) { String stockKey course:stock: courseId; // 先嘗試 Redis 預(yù)扣 Long result redisTemplate.execute( new DefaultRedisScript(LUA_DECR_STOCK, Long.class), Collections.singletonList(stockKey), 1 ); if (result null || result -1) { // 緩存未命中從數(shù)據(jù)庫加載容量后重試 loadStockToRedis(courseId); result redisTemplate.execute( new DefaultRedisScript(LUA_DECR_STOCK, Long.class), Collections.singletonList(stockKey), 1 ); } if (result null || result 0) { return SelectionResult.fail(課程已滿); } // Redis 預(yù)扣成功走數(shù)據(jù)庫樂觀鎖寫入 try { int updated courseMapper.decreaseStock(courseId); if (updated 0) { // 數(shù)據(jù)庫扣減失敗回滾 Redis redisTemplate.opsForValue().increment(stockKey); return SelectionResult.fail(選課失敗請重試); } selectionMapper.insert(studentId, courseId); return SelectionResult.success(); } catch (DuplicateKeyException e) { // 重復(fù)選課回滾 Redis redisTemplate.opsForValue().increment(stockKey); return SelectionResult.fail(請勿重復(fù)選課); } }對應(yīng)的 MyBatis 更新語句用樂觀鎖update iddecreaseStock UPDATE course SET selected_count selected_count 1, version version 1 WHERE id #{courseId} AND selected_count lt; capacity AND version #{version} /update這里有個細(xì)節(jié)version需要從查詢結(jié)果傳入。實際寫法是先SELECT拿到當(dāng)前 version再帶著 version 去UPDATE。如果更新影響行數(shù)為 0說明在查詢和更新之間有人改了數(shù)據(jù)需要重試或直接返回失敗。提示Redis 預(yù)扣和數(shù)據(jù)庫扣減之間不是強一致。如果數(shù)據(jù)庫扣減成功但 Redis 回滾失敗會導(dǎo)致 Redis 庫存比實際少。生產(chǎn)環(huán)境需要定時任務(wù)對賬把 Redis 庫存重置為capacity - selected_count。課程設(shè)計場景下加一個每 5 分鐘執(zhí)行的對賬任務(wù)就夠。3.2 前端選課交互防重復(fù)提交與結(jié)果反饋前端不是只畫頁面。選課按鈕點下去之后要立刻禁用按鈕、顯示 loading防止學(xué)生狂點。用 Vue 3 的ref控制按鈕狀態(tài)const submitting ref(false) async function handleSelect(courseId) { if (submitting.value) return submitting.value true try { const res await selectCourseApi(courseId) if (res.code 200) { ElMessage.success(選課成功) await refreshCourseList() } else { ElMessage.warning(res.message || 選課失敗) } } catch (e) { ElMessage.error(網(wǎng)絡(luò)異常請稍后重試) } finally { submitting.value false } }submitting是一個響應(yīng)式布爾值為 true 時按鈕的:disabled綁定生效同時可以顯示“提交中…”文案。finally里恢復(fù)狀態(tài)保證無論成功失敗按鈕都能再次點擊。Axios 封裝里要加 Token 攔截和統(tǒng)一錯誤處理import axios from axios const request axios.create({ baseURL: /api, timeout: 10000 }) request.interceptors.request.use(config { const token localStorage.getItem(token) if (token) { config.headers.Authorization Bearer ${token} } return config }) request.interceptors.response.use( response response.data, error { if (error.response?.status 401) { localStorage.removeItem(token) window.location.href /login } return Promise.reject(error) } ) export default request攔截器做了兩件事請求發(fā)出前自動帶上 Token響應(yīng)返回后如果 401 就跳登錄頁。這樣每個頁面組件不用重復(fù)寫鑒權(quán)邏輯。3.3 課程列表的分頁與緩存策略課程列表是讀多寫少的典型。每次學(xué)生打開選課頁都要查一遍如果每次都走數(shù)據(jù)庫高峰期數(shù)據(jù)庫壓力很大。我一般用 Redis 緩存課程列表的第一頁因為大部分學(xué)生只看第一頁。public PageResultCourseVO listCourses(int page, int size, String keyword) { String cacheKey course:list: page : size : (keyword null ? : keyword); String cached redisTemplate.opsForValue().get(cacheKey); if (cached ! null) { return JSON.parseObject(cached, new TypeReferencePageResultCourseVO() {}); } PageHelper.startPage(page, size); ListCourseVO list courseMapper.selectByPage(keyword); PageInfoCourseVO pageInfo new PageInfo(list); PageResultCourseVO result new PageResult(pageInfo.getTotal(), pageInfo.getList()); redisTemplate.opsForValue().set(cacheKey, JSON.toJSONString(result), 30, TimeUnit.SECONDS); return result; }緩存時間設(shè) 30 秒是因為選課過程中課程余量變化快緩存太久會導(dǎo)致學(xué)生看到過期的余量。30 秒是一個折中既能擋住大部分重復(fù)查詢又不會讓數(shù)據(jù)太舊。管理員排課或修改課程后主動刪除對應(yīng)的緩存 key。分頁用 PageHelper 插件PageHelper.startPage之后緊跟的查詢會自動加 LIMIT。注意startPage只對下一次查詢生效不要把它寫在無關(guān)查詢前面。4. 避坑與排查選課系統(tǒng)最容易翻車的五個地方4.1 坑一Redis 預(yù)扣成功但數(shù)據(jù)庫寫入失敗庫存對不上現(xiàn)象壓測時發(fā)現(xiàn) Redis 里課程余量顯示還有 10 個但數(shù)據(jù)庫里selected_count已經(jīng)等于capacity學(xué)生點選課提示“課程已滿”但 Redis 預(yù)扣卻通過了。原因Redis 預(yù)扣和數(shù)據(jù)庫扣減是兩步操作中間可能因為數(shù)據(jù)庫連接超時、樂觀鎖沖突、唯一索引沖突等原因失敗。失敗后如果忘記回滾 Redis就會導(dǎo)致 Redis 庫存虛高。解決在數(shù)據(jù)庫操作失敗的catch塊里必須回滾 Redis。更穩(wěn)妥的做法是用 Redis 的INCR把預(yù)扣的數(shù)量加回去。同時加一個定時對賬任務(wù)每 5 分鐘掃描所有課程把 Redis 庫存重置為capacity - selected_count。對賬任務(wù)的 SQL 很簡單SELECT id, capacity, selected_count FROM course遍歷結(jié)果對每個課程執(zhí)行redisTemplate.opsForValue().set(course:stock: id, capacity - selected_count)。4.2 坑二Vue 打包后放進(jìn) SpringBoot 靜態(tài)目錄刷新 404現(xiàn)象開發(fā)時前端跑在 5173 端口后端跑在 8080一切正常。把 Vue 打包后的dist目錄拷到 SpringBoot 的src/main/resources/static下訪問首頁正常但刷新/courses頁面就 404。原因Vue Router 默認(rèn)用 history 模式刷新時瀏覽器會向服務(wù)器請求/courses這個路徑SpringBoot 找不到對應(yīng)的 Controller返回 404。解決在 SpringBoot 里加一個配置類把所有非 API 路徑轉(zhuǎn)發(fā)到index.htmlConfiguration public class WebConfig implements WebMvcConfigurer { Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler(/**) .addResourceLocations(classpath:/static/); } Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController(/{path:[^\\.]*}) .setViewName(forward:/index.html); } }addViewControllers里的正則[^\\.]*表示匹配不含點的路徑這樣/courses會轉(zhuǎn)發(fā)到index.html而/js/app.js這種帶點的靜態(tài)資源請求不會被攔截。4.3 坑三SpringBoot 版本太高導(dǎo)致 Java 8 環(huán)境跑不起來現(xiàn)象用 Spring Initializr 生成了 SpringBoot 3.2 的項目本地 Java 17 跑得好好的拿到學(xué)校機房 Java 8 環(huán)境里java -jar直接報UnsupportedClassVersionError。原因SpringBoot 3.x 要求 Java 17 起步編譯后的 class 文件版本是 61Java 8 的 JVM 只認(rèn)到 52。解決如果部署環(huán)境不可控直接降級到 SpringBoot 2.7.x。在pom.xml里把 parent 版本改成2.7.18同時把java.version設(shè)為1.8。注意 SpringBoot 2.7 的依賴坐標(biāo)和 3.x 有差異比如javax.servlet和jakarta.servlet的包名不同降級后需要把 import 改回javax。4.4 坑四選課記錄表沒有聯(lián)合唯一索引學(xué)生重復(fù)選課現(xiàn)象學(xué)生快速點擊兩次選課按鈕或者網(wǎng)絡(luò)重試導(dǎo)致請求重復(fù)發(fā)送數(shù)據(jù)庫里出現(xiàn)兩條相同的(student_id, course_id)記錄。原因表設(shè)計時只加了自增主鍵沒有對(student_id, course_id)做唯一約束。業(yè)務(wù)代碼里的“先查再插”在并發(fā)下不可靠。解決加聯(lián)合唯一索引UNIQUE KEY uk_student_course (student_id, course_id)。這樣即使兩個請求同時插入數(shù)據(jù)庫也會保證只有一條成功另一條拋DuplicateKeyException。Java 側(cè)捕獲這個異常返回“請勿重復(fù)選課”即可。4.5 坑五前端 Token 過期后接口全部 401但頁面不跳轉(zhuǎn)現(xiàn)象學(xué)生登錄后放置半小時再點選課所有接口返回 401但頁面沒有任何反應(yīng)學(xué)生以為系統(tǒng)卡死。原因Axios 響應(yīng)攔截器里只處理了業(yè)務(wù)錯誤沒有統(tǒng)一處理 401 狀態(tài)碼?;蛘咛幚砹说D(zhuǎn)邏輯寫在組件里每個頁面都要重復(fù)寫。解決在 Axios 響應(yīng)攔截器里統(tǒng)一處理 401清除本地 Token 并跳轉(zhuǎn)登錄頁。注意跳轉(zhuǎn)要用window.location.href而不是 Vue Router 的push因為攔截器里拿不到路由實例。跳轉(zhuǎn)前可以加一個判斷避免在登錄頁反復(fù)跳轉(zhuǎn)if (error.response?.status 401) { localStorage.removeItem(token) if (window.location.pathname ! /login) { window.location.href /login } }5. 壓測驗證與一個容易被忽略的細(xì)節(jié)5.1 用 JMeter 模擬 500 人同時搶課寫完代碼不算完得驗證。我用 JMeter 做過一輪壓測線程數(shù)設(shè) 500Ramp-up 設(shè) 1 秒循環(huán) 1 次模擬 500 個學(xué)生在 1 秒內(nèi)同時點選課。目標(biāo)課程容量設(shè) 50。測試計劃配置組件配置Thread Group500 線程Ramp-up 1s循環(huán) 1 次HTTP RequestPOST /api/selectionsBody 含 courseIdHTTP Header ManagerContent-Type: application/jsonAuthorization: Bearer ${token}Summary Report查看吞吐量、平均響應(yīng)時間、錯誤率第一次跑錯誤率 12%主要是“課程已滿”和“請重試”。查看數(shù)據(jù)庫selected_count正好 50沒有超賣。Redis 庫存也歸零。說明并發(fā)控制生效了。但平均響應(yīng)時間 800ms偏高。排查發(fā)現(xiàn)是每次選課都查了一次數(shù)據(jù)庫拿 version這個查詢在 500 并發(fā)下成了瓶頸。優(yōu)化方案把 version 也緩存到 Redis選課時直接從 Redis 讀 version數(shù)據(jù)庫更新時帶上這個 version。如果更新失敗再從數(shù)據(jù)庫重新加載 version 重試一次。優(yōu)化后平均響應(yīng)時間降到 320ms錯誤率降到 3% 以下。剩下的錯誤主要是樂觀鎖沖突后的重試失敗屬于可接受范圍。5.2 一個容易被忽略的細(xì)節(jié)選課時間窗口校驗很多實現(xiàn)只校驗容量忘了校驗選課時間窗口。學(xué)生可能在選課結(jié)束后通過直接調(diào)接口選課或者管理員還沒開放選課就有人搶跑。正確做法是在選課接口入口加時間校驗public SelectionResult selectCourse(Long studentId, Long courseId) { Course course courseMapper.selectById(courseId); LocalDateTime now LocalDateTime.now(); if (now.isBefore(course.getStartTime())) { return SelectionResult.fail(選課尚未開始); } if (now.isAfter(course.getEndTime())) { return SelectionResult.fail(選課已結(jié)束); } // ... 后續(xù)并發(fā)控制邏輯 }這個校驗要放在 Redis 預(yù)扣之前避免無效請求打到 Redis。時間窗口可以從數(shù)據(jù)庫讀也可以緩存到 Redis 并設(shè)置過期時間等于endTime過期后自動失效。另外退課接口也要加時間窗口校驗通常退課截止時間比選課截止時間早一兩天方便教務(wù)處統(tǒng)計最終名單。這些時間參數(shù)建議做成配置項放在application.yml里不同學(xué)期改配置就行不用改代碼。selection: window: select-start: 2025-02-20T08:00:00 select-end: 2025-02-25T22:00:00 drop-end: 2025-02-23T22:00:00用ConfigurationProperties綁定到一個配置類注入到 Service 里使用。這樣比硬編碼在代碼里靈活得多。5.3 我踩過的一個血淚教訓(xùn)早期做選課系統(tǒng)時我把 Redis 預(yù)扣和數(shù)據(jù)庫扣減放在同一個事務(wù)里想著“要么都成功要么都失敗”。結(jié)果發(fā)現(xiàn) Redis 操作不參與 Spring 的Transactional數(shù)據(jù)庫回滾了 Redis 不會回滾反而更容易出問題。后來改成“Redis 預(yù)扣 數(shù)據(jù)庫扣減 失敗手動回滾 Redis 定時對賬”這套組合拳才穩(wěn)定下來。分布式場景下不要試圖用本地事務(wù)去包住兩個不同的存儲系統(tǒng)。接受最終一致用對賬兜底比追求強一致更實際。這個習(xí)慣我保持到現(xiàn)在任何跨存儲的操作先問自己“失敗了怎么補償”而不是“怎么讓它不失敗”。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产免费久久久久| 校园激情狠狠四射| julia高潮后不停追击中出| PMv在线观看| 久久久∴| 人妻无码久久一区二区三区免费| 日韩AV电影网站| 日韩亚洲中文字幕在线| 日韩免费a级毛片无码a∨| 午夜AV污污污| 精品小视频在线| 欧美一区91大爱| 福利社区午夜一区二区| a片偷拍视频| 电家庭影院午夜69久久夜色精品国产69乱| 久草毛片| 欧亚韩国999| 亚洲色图 图片| 欧美日韩免费专区在线| 久久久久骚| 中文字幕成人| 男人的天堂激情| 天天做天天爱天天爽| 欧美性爱1080p| 九一屌逼| 国产大片精久久久久久| 夜夜嗷嗷一区二区| 龙兴卡官方查询| 裸模AV女优| 性色乱AV一区二区| 婷婷丁香一区二区三区| 99xav| 爱欲AV| www.四虎在线| 中文字幕日产av人| 久久久9品一区二区三区| 九月婷婷| 91天射| www.男人天堂| 老女人91| 男同专区一区二区三区在线| 久久久四区| 精品夜夜澡人妻无码AV| 欧美亚洲中文| 亚洲第一页第二页激情| 强奸抽插av| 亚洲一欧洲中文字幕在线| 人妻中文字幕精品无码 | 无码自拍SM| 曰韩av中文字幕专区| av一区二区三区 中文| 免费观看的黄色的网站| 国产久久一区二区三区野外在线| caopeng97人妻| 另类 综合 日韩 欧美 亚洲| 一区二区三区在线日韩影院观看| 久操国产在线| 亚洲无码太久| 久久嫩草| 不卡中文字幕aⅴ在线| 岛国免费黄色网址| 97操操| 欧美第一页性| www. 男人天堂成人在线| 欧美日韩人妻精品系列一区二区三区| 人妻啪| 国产精品久久久久亚洲av| 乱伦AVxx| 久久偷拍人| 久草成人影片| 日韩啊V| 爽 好舒服 无码刺激久久| 看一级黄色视频| 91 手机在线播放 绯色| 97资源站国产精品| 国产一区二区精品久久99| 狼人久草| 欧美在线啊啊啊| 黄站在线免费观看| 色吧5亚洲| 亚洲 欧美日韩 另类| 国产精品电影| 中文字幕国产| 亚洲砖码砖专无区2023| 天美一二三在线观看Av| 91 偷| 欧美日韩国产高清在线一二三区 | 人妻丝袜无 码视频专区| 午夜呻吟欧美| 日韩无码专区| 欧美精品欧美精品系列| 无码动漫av中文字幕| A片三级无码| 一级黄碟在线观看| 人人爱人人乐人人操| 日本肉体xxxx裸交| 裸体1区| 国产精品久久久久婷婷二区次| 欧美极品美女aaaaaa级黄片| 97人人操人人干| 亚洲欧洲无码一区夜| 亚洲另类春色| 这里只有精品视频在线| 欧美亚洲韩国视频十五区| 天天日天天干天天色| 嗯嗯啊啊视频在线看| 久久人妻一区二区三区高清 | 久久有碼| 国产隔壁老王影院在线| 丁香五月天久久精品视频一区二区三区| 欧美色图99| 婷婷影院入口| 久久久久久裸体| 91社操逼| 少妇激情AV| 五月婷婷啪啪| 男人的天堂Va| 亚洲老熟妇xxx| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 在线 亚洲 网爆 自拍| 五十路三区在线| 探花精品视频| 亚洲av噜噜噜噜噜噜| 亚洲av在线免费观看| 97视频播放| 久操热线| 久久国产精品m码| www.婷婷六月天| 九九热精品视频六| 国产精品一区二区三区在线密挑| 欧美日韩久久精品爱爱| 欧美日本天堂| 激情综合二| 欧美综合综合| 久久久久久性爱视频| www熟女乱伦com| 国内操逼视频二区| 国产精品久久久久av| 无码二级三级| 丁香五月天婷婷姐| 国产大陆天天艹| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 国产熟女少妇一区| 日本黄色精品专区网站| 久久视频,这里只有精品 | 91天天爽| 97国产亚洲中文在线| 亚洲国产av中文字幕久久| 男女做爰猛烈动高潮A片免费应用| 爆乳免费黄网站| 天天做日日做| 91白虎| 色噜噜国产在线| 欧美日韩国产三级黄色| 久久三区四区| 超碰在线1234区| 操人妻丝袜高跟| 五月天玖玖资源站| 乱伦日本中文自拍| 亚洲图片视频小说| 色踪合AV| 久日91在线| 999日韩中文精品观看视频。| 和协影院中文字幕三区| 999国产精品999久久久久久| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 情色五月天就去干| 中文字幕精品丝袜| 九九色综合| 亚洲欧洲自拍图片专区满春格| 91在线色| 大香蕉亚洲中文| 天天干天天燥| 亚洲国产成人精品999| 精品美女人人干| 一区久久久二区| 久久亚洲av成人无码国产| 26uuu久久| 一区二区三区在线日韩影院观看| 97超碰热线| 六月丁香五月婷婷| 永久免费发布性爱网| 日日夜夜摸| 清纯唯美综合亚洲| 久久97超碰香蕉| 午夜啊啊啊| 大香蕉碰碰| 五月丁香婷婷色| 中文字幕一区二区在线日韩精品| 男人的天堂午夜av| 色呦呦国产精品免费看| 欧美性夜| 色九九久九九| 人妻熟女一区二区在线视频| 94色色电影网| 老熟女91| 91老司机在线| 蜜臀久久久99久久久久| 国产色图乱伦| 国产Av超碰| 一级日本牲交大片好爽在线看| 校园春色五月天| 欧美图片校园春色| 中精品一区二区三区| AV99热18这里只有精品| 免费成人在线熟妇网| 99久久综合| 亚洲狼狼干综合1| 蜜臀AV一区二区三区激情综合| 亚州色图第三区| 91熟女熟妇视频网站| 小少妇| 中文字暮97| 亚洲黑丝在线| 欧美高清性猛交| 99青青草国产视频| 国产偷人妻精品一区二区在线| 欧美老妇女内射网址| 日日A∨| 和协影院中文字幕三区| 少妇精品久久久八区九区| 色踪合AV| 91爱剪切久久| 欧美国产精品久久九九| 欧美一区二区日韩三区| 探花熟女,姿勢到位,體驗感也到位| 黑人狂躁日本妞一区二区三区| 强奸乱伦Av网| 久久婷婷视频| 亚洲国产剧情少妇激情| 欧美美女后入| 啊v在线观看视频| 青青操网| 国产精品老师| 91在线|亚| 欧美色天堂网在线视频| 亚洲中字慕不卡| 国产白丝精品在线观看| 天堂中文资源在线bt| 成人AV在线电影| oumeisetu综合| 久久中日麻豆| 欧美96在线|欧| 日韩欧美亚洲自拍偷拍| 好色综合| 激情AV| 久久久亚洲精品电影免费看| 热热色国产一二区AV| 伊人97| 欧美AAAA黄片| 色婷网| 人妻日日夜夜精品| yazhououmeizongya| 国产精品网址| 一区二区三区免费岛国片| 国产99热| a片亚洲一本通视频| 欧美激情 亚洲色图| 性夜影院爽黄A爽免费动漫| 天天操夜夜嗨| 蜜桃臀 后入 一区 二区 三区 在线| 欧美视频激情久久久久久| 亚洲天堂少妇| 日操粉逼逼| 宅男91视频在线播放| 97超碰人操| 国产肏逼网站| 中文字暮97| 亚洲女人毛茸茸91| 国产绿奴视频在线观看| 日韩欧亚太美不卡| 欧美黑人熟妇精品91| 1956日韩精品| 午夜啊啊| 亚洲综合成人网| 在线免费试看60秒| 狠狠操官网| av婷婷色网| 男人的天堂1024| 操逼逼无码| 好看的久久不射无码影视影院| 午夜精品久久久久久久久久久久久| 插穴性爱视频在线观看| 99色婷婷中文字幕乱色| av在线播放国产一区| 激情一区二区三区在线观看| 94色色电影网| 久久97资源 网| 大香蕉乱级| 亚洲 中文 女同| 欧美成97爱| 无码自拍SM| 激情婷婷丁香| 麻豆这里只有精品| 东京太热男人的天堂久久久| 91xingse| 免费看黄片现成| 97视频在| 国产一级作爱毛片| 香蕉精品二区二区| 男人的天堂2018东京热啪啪啪| 亚洲色图A| 九九九九久久久| 大香蕉伊人75| 欧美专区在线| 国产一区二区三区白丝| 天堂亚洲精品久久老牛| 日韩午夜啪啪视频| 91社区伊人| 91红杏| 亚洲中文一区二区三区| 国产中文字幕在线观看| 欧美亚涩| 777AV电影| 很狠操| 能看的AV| 性暴力欧美猛交在线直播| 天天天天天超碰| 亚洲AV无码久久久国产精品| 欧美精品二区视频在线| 欧美人人天天网| 欧美 亚洲 偷拍自拍| 熟妇一区二区| 色女免费在线观看视频网址| 日本天天吊| 性videos欧美熟妇hdx| 91麻豆一二三区| 国产67194| 被窝影院午夜看片无码| 黄色免费网页无码| 欧美色网| 久久精品操| 97干在线看| 人人人人插| 中国特猛少妇色xxx| 色噜噜人妻av 中文字幕| 欧美日韩亚洲一区二区在线观看| 999国产精品999久久久久久| 狠狠躁日日躁夜夜躁A| 五月丁香六月激情| 377p欧洲日本亚洲大胆| 国产9区| 欧美色自拍| 日韩欧美女优电影| 黄色欧美性爱视频| a片偷拍视频| 欧美日韩欧美| 久久9精品网站| 色狠狠综合噜一二三区| 亚洲影视综合网| 黄色电影观看久久9| 三级色影综合网| 日本新免费二区三区| 久久久久成人蜜桃精品| 激情五月天社区| se吧提供国产乱老熟视频胖女人| 97超碰大| 人妻久久| 性生活性生大爱77AV国产| 国产精品欧美激在线| 六九九九| 中文字幕在线观看丝袜| 青青11操操操操操操操操| 亚洲最大网站av| 超碰人人操97碰| 久久国产在线一区二区| 东京热男人的天堂| 神马久久久久久| 肥佬影院91| 午夜偷拍久久熟女| 无码一区二区精品视频久久久春药 | 三及片网站| 欲色啪| 超碰免费欧美7| 久久大陆| 亚洲有码第一页| 91成人国产综合久久精品蜜月| 高潮内射在线| 在线视频一区二区传媒| 久久久婷婷| 日韩内射视频| 后入式在线免费观看60秒| 美女淫穴| 久久久久久中文版| 欧美熟妇亚洲版| 1024手机看片欧美日韩| 欧洲精品欧洲精品| 岛国不卡超碰护士AV在线播放| 男人网站婷婷| 五月天欧美色图| 激情婷婷丁香| 日本二三四区| 九九九九热| 99无码狠狠久久| 日韩中文字幕视频| 2019久久久久久久久福利| 欧美日韩免费性爱| 91精品大奶人妻| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 2020中文字幕在线| 欧美色网络| 欧美亚洲激情| 国产亚洲日韩在线三区黑人| 很很热性爱视频| 色五月大香蕉| 亚洲天堂另类小说男人| 色麻豆AV| 啊啊啊啊啊啊在线| 色色色日本| 国产精品一级片在线看| 九九综合| 狠色婷婷久久一区二区三区_| 日本国产二线女色| 人人妻人人玩人人澡人人爽| 国产精品人妻熟女aⅴ| 久久精视频美日韩在线视频| 夜色五月天| 美女主播色欲91抠b在线播放| 97天天插| 国产精品又黄又猛又粗| 人人摸人人叼| 用力操死我| 超碰97亚洲区| 欧州一区二区三区四区| 欧美强奸一区二区诱惑| 色 婷97| 亚洲日本大香蕉1| 乱伦一二三| 欧美顶级黄片AAAAA在线免费看| 国模限制级电影| 综合91网| 久久 国产 无码| 超碰狠狠操| 亚洲精品美女操逼| 国产强奸乱伦无码视频| 欧美综合区| 久久免费看高潮毛片韩国| 黑人粗大V S日韩女优视频| a'v在线资源| 中文字幕诱惑制服人妻丝袜美丝袜美| 青草精品视频-日本久久久久网站| 被男人添B超爽视频| 激情五月天婷婷| 加勒比少妇AV婷婷六月天超碰超碰| 老熟女91视频| 无码抄逼网| 亚洲一区二区专区-国产丝袜精品丝袜-成人AV| 亚洲视频精选| 久操精品网| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 人妻喷水| 盗摄女人妻在线| 欧美日韩国产男人| 欧美欧美啪啪视频| 麻豆视频test| 久久只有精品| 亚州操操穴网| 丰满人妻一区二区三区色-百度| 8050无码八戒| 人妖欧美一区二区| 激情久久av一区av二区av| 婷婷五月天无码| 天天爽夜夜爽夜夜爽精| 天天爽夜夜欢视| 中文久久| 超碰色中文| 精品欧美不卡在线播放| 91人妻丝袜无码| 久操视频在线观看| 北京专精特新企业招聘信息| 99亚洲国产精品色一区二区三区| 91美女在线精品视频| 日韩少妇无码| 不卡九肏| 中文字幕精品日韩中文字幕| 日本久久999| 国产免a费看黄片在线| 久草热制服丝袜在线观看| 久久久久久电影| 九9热伊人| 亚洲色图亚洲无码强奸乱伦| 国产成人五月天丁香花| 开心激情站| 美女网站91| 国产女上位好爽在线| 国产福利合集| 欧美97在线观看| 欧美日韩在线国产在线| 51一区二区三区| 久久久网站| 久久久蜜桃臀无码视频| 久久综合女优| 日本性爱网址| 久操视频在线观看| 亚熟hd视频在线| 欧美成人综合| 国产一区二区欧美日本| 亚洲天天更新| 欧美页片| a网站免费观看| 精品人妻免费观看| 五十路人妻在线| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 色色热| 一级AV性爱| 96国产污污污丝袜| 亚州色图第三区| 巨爆乳一区二区爆乳区| 天天欧美| 亚州欧美总和| 久久99国产综合精品女同| 国产高清无码一区三区二区| 亚洲中文丝袜美腿诱惑字幕| 北京美女一区二区| 日韩久久三区| 免费A V在线播放| 国产精品国产精品国产| 欧美激情黑人| 熟啊v色欧美热| 五月丁香综合啪啪| 亚洲?V无码专区在线电影| 91天美免费| 欧美视频激情久久久久久| 婷婷色综合| 国产传媒操逼视频| 天天看夜夜看日日干| 伊人网一本| 亚洲日韩青青草色月| 久久草大香蕉| 欧美不卡二区| 国产精品蜜臀久久久久无码AV| 久热伊人| 91九色丰满高潮| 美女主播色欲91抠b在线播放| 久久超碰爱| 国产精选三级在线观看| 欧美操逼熟女| 久综合国内精品自在自线| 亚洲熟女av中文字幕| 一区二三区四区视频大全套| 亚州色站 日韩电影| 天天综合精品| 中文字幕乱偷人妻久久艾草网| 欧美 中文字幕 一区| 色婷婷亚洲婷婷| 久久免费精品视频免一| 亚洲1区2区三区高清中文字幕| 午夜性生活av免费在线看| 欧美人妻制服| 大香蕉99999| 久久久一区二区三区麻豆| 青娱乐手机日韩在线视频| 后入内射蜜桃臀| 日韩丝袜人妻AV| 殴美,日韩国产伦精品| 色99视频| 深爱激情五月天| 女人爽到高潮潮喷18禁网站| 日韩性爱视频免费在线 | 超碰日韩美妻| AV色图| 欧美洲精品一级| 国产久9| 欧美日韩制服| 麻豆视频一区二区| 69国产对白刺激| 亚洲另类欧美精品| 亚洲精品毛片在线观看| 伊人影院综合是一个与深夜成人在线| 国产精品一区二区三区,亚洲综合| 激情网色| 国产激情综合| 嗯啊啊啊轻点视频 | 亚洲,欧美,春色,另类| 亚洲色偷偷色噜噜狠狠99网| 亚洲精品丝袜| 69久久久久久久久久久久久| 91青青在线视频| 久久精品超碰| 精品亚洲成人免费在线| 探花熟女,姿勢到位,體驗感也到位| 黄片aaaaa一区| 国产伦精品一区二区三区在线观 | 亚洲激情视频| 欧美人人曰人人操人人射射| 欧美一区二区三区成人性生活| 91高清欧美| 中文日韩欧美熟| 91在线精品| ai欧美亚洲小说| 69超碰综合| 2024年最新色情网站在线观看| 欧美熟女少妇| 婷婷99狠狠躁天天躁| 伊人伊人LD| 超碰97人妻免费在线| 久久久久久久久九九久孕交| 毛片一区二区| 久久精品免费| 黄页| 久久这里只精品免费福利| 日日躁夜夜躁狠狠躁超爽| 亚洲中文字幕在线视频一区二区| 成人八戒网站| 久久免费精彩视频| 亚洲天堂资源| 中文久久久| 亚洲91色在线| 国产成人天堂| 黄色AAAAA欧美| 亚洲在饯| 日本性爱欧美性爱| 色好看av| 91精品女厕偷拍视频| 超碰4A| 天天添天天干电影| 深夜国产一区二区三区在线看| 99re9| 欧美特大AA级黄片| 国产三级日产三级韩国三级| 国模不卡一本二本三电影| 中文字幕在线免费观看视频| 国产熟女乱论| 岛国大片在线观看网站入口| 91在线精品一区二区三区| 91国产丝袜白虎| #NAME?| 免费精品AB| 精品二区久久| 亚洲深夜福利| 97天天| 久久久少妇| 超碰97人妻免费在线| 丁香九月婷婷| 久久产精品一区二区三区电影| 60秒不遮不挡| 九九九久久久| 国产精品一区av在线| 一区二区三区 日韩欧美| 岛国网址国产| 高清国产av无码| 久久久久精| 欧美三级免费伊人| 熟女网站最新| 操一对老熟妇爽上天视频| 精品夜夜澡人妻无码AV| 欧美日韩1234| 日本操嫩b网| 成人婷婷丁香| 精品999日本| 中文字幕一品色图| 麻豆国产97在线| 变态乱伦伪娘灌肠一区二区| 爱av免费| 熟妇一区二区三区| 日韩A优精品在线观看| 丰满少妇高潮无码| 美女尤物福利视频| 婷婷久草一区二区三区| 久久99午夜精品一区人妻| 久久久久久久唑| 超碰天天操| 91精品国产一区三一| 天天做日日做天天欢。| 成人欧美日超碰| 日韩一区二区精彩视频| 亚洲高潮少妇| 久久97视频| 欧美色97| 高清成年美女黄网站免费大全| 色欧美天天| 美女久久久久久久| 日日操免费视频| 欧美天天干| 久久大黄片| 男女国产精品| 乱伦3P视频| 亚洲自拍偷拍视频在线| 国产在线综合网| 99热综合| 91日产桃蜜| 99综合视频一体| 97精品一区| 日韩精品中文字幕二区| 欧洲亚洲人人爽爽视频| 变态乱伦伪娘灌肠一区二区| 亚洲欧美国产中文字幕| 天天干天天操天天操夜夜操天天操 | 日韩中文字幕精品一区在线| 午夜天堂精品久久| 日韩免费中文字幕视频| xxx亚洲午夜天堂| 性饥渴少妇av无码毛片| 久草男人天堂| 久久男女激情视频网站| 亚洲成人帖图| 亚洲人妻一区二区三区| 亚洲色图 欧美| 狠狠图片青青草| 亚洲最大网站av| 清纯唯美激情| 男人天堂日日夜夜| 一起草精品人妻| 91无遮挡| 在线免费试看60秒| 大香蕉97久久| 欧美经典一区二区三区| 天美传媒精品久久视频| 在线 亚洲 网爆 自拍| 免费观看国产小粉嫩喷水精品午| 97爱啪| 老熟女熟妇| 日本一区二区三区四区免费观看| 台湾佬大香蕉| 看一级黄色视频| 性久久久| 亚洲欧美日韩不卡人妻| 国产真实野战在线视频| 蜜桃色院一区久久 | 亚洲av淫乱| 可以免费观看的日韩av毛片| 免费黄色视频网址| 在线人妻熟女一区二区三区四区五区| 一区二区 电影 亚洲| 97国产亚洲中文在线| 欧美日韩国产传媒在线精品| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 北野未奈加勒比av| 欧美第38页| 亚洲免费精品一区| 丰满人妻-区二区三区免费| 国产免费一区在线观看| 日韩在线观看字幕精品| av无码精品久久久久| 久久无码一区二区二三区性色| 2017天天拍大香蕉| 黄页av| 春色91| 国产9l 大屁股| 97爱爱官网| 天堂综合| 日日日日做夜夜夜夜做无码97| 久久视频少妇美女| 极品AV网站在线观看| 精国久久一区二区三区98| 免费网色网站| 91天美传媒在线| 在线黄色污污网站| 亚洲色91C| 加勒比少妇AV婷婷六月天超碰超碰| 性色av一区二区| 91色伦综合| 欧美激情久久久久| 曰本道人妻久久久在线不卡色视频| 日日干夜夜欢| 日韩AV噜噜噜一区二区三区四区 | 亚洲日韩美女中文字幕乱| 欧美人与性动交a美精品| 人人摸人人添人人操| 国产视频一区二区免费| 大香蕉久久| 91久热这里只有精品| 97超碰天天| 亚洲性综合| 男人的天堂com| 翔田千里A片一区二区| 国产久久成人| 欧美 亚洲 偷拍自拍| 亚州宗合另类| 伊人丝袜美腿高跟在线观看高清| 97超碰精品成| 欧美日韩精品久久久久久久久东北老熟妇| 亚洲欧美色图片| 亚洲性爱电影| 开心婷婷五月| 九九九久久久久| 91欧美少妇| 亚洲高清视频在线免费观看| 天天艹天天日| 久草大| 青青草视频久久久久| 大香蕉综合在线| 九九九九热只有精品| 香蕉视频欧美一卡二卡| 久久久久久日韩| 屌色在线97视频| 久草在| 老女人碰碰在线碰碰视频| 91中出在线| .精品人妻一区二区三| 久操热线| 97伪v| 人妻色偷色噜| 9久久精品| 天天插夜夜爽| 人人摸人人入| 精品性爱无码在线播放| 久久久久久久少妇| 欧亚韩国999| 亚洲春色一区二区三区| 国产呦精品一区二区三区下载| 啊啊啊好爽快点啊啊啊嗯嗯| 国产久久日| 大香蕉中文在线| 免费看A片毛毛片在线播| 99少妇精品视频| 精品综合久久久久久97| 啪啪视频免费在线观看| 日本三级韩三级99久久| 国产精品久久久777| 天天干18禁| 最新中文字幕在线亚洲| 国产自产91区13区| 精品十八在线观看| A 在线网址| 欧美色九九九| 搡老女人老91二区| 精品v日韩欧美国产| 草久久久| 婷婷色综合欧美日韩| 国产日韩欧美三级片| 欧美 亚洲 另类 综合| 中文字幕国产在线天堂| 色色五月婷婷| 少妇高潮喷水无套久久久久久| 岛国A V在线免费看| 国模限制级电影| 国产9l 大屁股| 一个人免费HD91视频| 精品网站99999| 无遮挡男女激烈动态图| 欧美亚州手机在线| 天天干人人乐| 日本人妻A片成人免费看片| 欧美丝袜美女电影一二三四区| 日韩免费三级黄片电影| 成人影 天天操 亚洲| 男人在线天堂| 97超级久久强资源| 2017大香蕉| 中文高清一区二区的| 久久这里只有精品9| 青久久| 日韩乱伦影音先锋| 九七毛片九九毛片| 淫荡少妇免费| 欧美一区二区三区成人性生活 | 99精品久久久久久| 亚洲第2页| 天天搞欧美| 亚洲欧洲综合视频在线| 久久久78| 精品一区二区三区蜜桃臀赵总 | 日韩少妇丰满亚洲| 日韩免费三级黄片电影| 蜜臀AV成人精品蜜臀| 韩三级a视频在线观看| 亚洲吊色| 久久久无码av精| 少妇熟女视频一二三区| 九九色热| 国产精品人妻无码久久久老鸭窝| 日本天堂网| 一级特黄aaa大片在线观看成人一级片在线观看 | 丰满搜索结果 -第18页- 久久高清无码| 超碰免费人妻人人| 久久大陆| 99免费在线视频| 青娱乐999| 欧美久久久| 久久综合五月天| 人人操,人人插| 在线播放中文字幕| 国模限制级电影| 国产一区在线观看无码AV| 欧美第五页| 欧美最婬乱婬爆婬性视频 | 日韩成人在线性爱视频| 黄页网站成人免费| 91丝袜美女| 亚洲乱码国产乱码精网站| 搡老女人老熟女91老熟女综合网| 妇女视频网站| 99视频内射三四| 欧美91视频| 99re黄| 亚洲电影91| 99热亚洲天堂| 亚欧高清v| A片大香蕉在线| 久9综合在线| 熟女欧美日韩综合婷婷| 五月天丁香| 老司机射| 日韩字幕一区| 久草免费在线视频| 97精品中文字幕| 超碰在线974| 五月丁香六月激情综合| 一级黄色性爱A级片| 26uuu最新| 日日躁夜夜躁狠狠躁超爽| 色妇91| 极品内射| 99久久这里只有精品| 国产欧美一区激情交| 天天操天天干一区二区 | 911粉嫩人妻| 强奸乱伦AV网址| 激情五月天中文字幕色| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 人人搞人人插人人操| 亚洲一区二区中文字幕| 国产丸一视频| 亚洲色图国产另类| 欧美天天谢综合网| 艹我哪美一区无码| 亚洲超碰在线| 国产精品亚洲美女久久久久| 亚洲天堂7777| 国产精品呦一区二区三区| 人人操人人爽人人操人人| 啊啊啊啊啊啊好多水| 日韩有码中文字幕女同性恋| 激情婷婷丁香网| 偷拍片久久| 亚洲图片 激情小说| 亚洲成人色情五月天丁香花| 亚州乱码中文字幕综合久久久| 日本精品一区三区| 色婷婷六月| 久操大香蕉手机视频在线看| 99精品在线| 69人妻精品一区二区绯色| 五月天婷婷色| 青青草中文-久久青草精品一区二区三 | 亚洲激情网| 成人日韩欧美| 91校园春色长篇| 亚洲av在线免费观看| 后X久久| 久久久久久大| 天天做天天爱天天爽AV| 欧美精品91| 久久久99999久网站| 欧美大战久久久伊人| 一区二区三区色综合| 97视频在线免费播放| 九草九九九| 亚洲少妇综合| 天天爽天天操啊啊啊| 91性色| 啪啪啪东京| Blackedraw视频一区二区| 亚洲第一在线视频| 思思热在线观看| 麻豆久久久久久久久丝袜| 伊人操操| 日日AAvv| av影片在线观看不卡| 伊人丁香五月婷婷| 精品毛片久久久精品毛片| 超碰在线人妻| 中文字幕精品人妻丝袜| 亚洲一二三| 日韩欧美中文字幕搭讪巨乳美人妻视频| 九九九九九九九九九国产精品| 人人搞人人插人人操| 国产99精品一区二区三区免费| 日本一级性爱| 大香蕉手机在线视频| 亚洲美女 晚间男人天堂 | 极品销魂美女一区二区| 日本成人A片网站| 自拍鲍鱼一区在线高清观看免费| 天天影视网综合少妇| 天天综合网入口~91| 欧美精品不卡一二三四在线91| 爱逼综合| 亚洲AV秘 精品久久老牛影视| 激情五月天色色| 好吊色一区| 91中文字幕在线观看| 2017av无码免费无线播| 亚洲综合精品国产一区| 亚洲另类久操网| 久久中久文96| 国产精品久久妻无码网站| 蜜乳av首页| 国产盗摄美女如厕大神作品在线观看 | 强奸乱伦AV一天堂网| 性做久久久久久免费观看软件| 久久9亚洲| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 嗯啊啊啊轻点视频 | 国产欧美后入| 中文字幕精品探花视频| 日韩中文字幕视频在线观看| 亚洲淫乱骚妇AV| 躁躁躁日日躁2020| 91天堂色男人的天堂| 亚洲欧美爆| 欧美性性性| 岛国艾薇凹凸视频天堂| 中文字幕在在线观看网站| 少妇大屁屁| 国产熟女完整版中字| 亚洲 中文 女同| 日本在线伊人啪啪| 欧洲成人性爱视频| 欧美色997| 天堂无码| 亚洲午夜免费狠狠干| 日日AAvv| 黑人无码一区二区| 嗯嗯啊啊视频一区二区三区| 国产成人在线观看网址| 色色热| 九九九九热只有精品| 日本Xx性爱| 中文字幕女同在线| 久久国产熟女影院| 男人天堂站| 七月婷婷综合| 成人贴图日韩欧美| 欧美日韩在线小说 | 一级性爱啪啪视频| 一区中文字幕二区日韩| 看全色黄大色大片免费视频| 狠狠干综合| 96一区二区| 一本道综合色图| 日本三级精品| 人人扣人人操| 丰满熟妇大乳做爰| 国产九九九九九九九九| 啊啊啊啊啊舒服| 国产小视频91| 91网站18+| 免费一级毛片在线视频观看| q2午夜理论片夜色av| 日韩乱中文| 久久久久久久久国产| 日人妻视频91| 久久中文字幕人妻熟av女蜜柚| 亚洲熟女中文字幕在线| 亚洲九九视频| 丝袜 亚洲 偷拍| 久久六六| 亚州乱码中文字幕综合久久久| 久久精品国产亚洲妲己影视| 91挑色欧美| 国产亚洲精品玖玖玖在线观看| 日日日日做夜夜夜夜做无码97| 国产AV高清AV无码| 老熟女天天操| 国产原创自拍| 桃花色综合影院| 亚洲自拍欧美色综合| 天天操天天舔| 97网色| 影音综合网| 欧美日韩日产免费网站看| 人妻熟女一区二区| 狠狠狠狠狠狠| 欧美片第一页| 久久宗合亚洲| 五月婷婷六月丁香| 69XX一中文字幕人妻91| 天天超级碰碰碰| 色婷婷av在线观看| av网站在线看| 偷拍片久久| 国产一区二区三区中文字幕| 三男一女不戴套的A片| 欧美色图91p| 密桃99999| 亚洲免费成人在线高清无码视频| 天天日熟妇| 美中韩AV综合网| 成人a大片在线观看| 伊色久人大在线| 区二区亚洲婷| 色综合99| 国产一区在线观看无码AV| 狠久久| 亚洲欧洲日产国产综合网| 五月天综合在线| 国内精品久久人妻性色av| 91操熟妇| 四虎视频在线观看| 五月色丁香| 日韩精品一区二区日韩| 激情欧美97| 久久精品成人一区二区三区蜜臀| 精品四五区| 欧美久久伊人| 亚洲黄色视频在线观看视频| 97亚洲色图| 东京热熟女亚洲视频网站| 亚洲日本加勒比在线| 福利色色| 亚洲国产欧美一区二区潘金莲| 欧美色图电影| 另类专区加勒比| 91美乳| 偷拍 亚洲| 色婷婷久久| 亚洲成人久久一区二区| 人妻性爱一区二区| 蜜臀久久久99久久久久 | 久久曰曰| 天天操女人| 婷婷激情五月| 青娱乐久久艹| 无码高清操逼网址| 另类天堂| www国产精品| 国产又粗又长的视频| 天堂综合| 国产成人天堂| 久久久性爱视频| 高清不卡一二三区视频......| 日本午夜久久电影| 久久久久中出| 亚洲精品欧洲色| 天天天肏屄欧美| 日韩成人免费电影| 国产熟女乱论| www.91人妻.com| 久久久久久人| 国产亚洲日本| 亚洲欧美日韩制服另类| 精品玖九九久| 33044男人的天堂深夜备| 色偷综合| 亚洲国产丝袜在线观看| 99热精品国产| 91国产大片| 东京成人一区| 欧美一二三区四五区| 日本一区二区成人在线| 大香交| AA特级绝黄| 97人妻人人躁人人玩人人| 精品中文日韩字幕视频| 刺激精品视频| 91丝袜激情在线| 97亚洲欧美日韩| 亚洲熟久久| 欧美91久久久久| 亚州色图片在线色| 夜夜免费视频| 91精品婷婷国产综合久久| 肉丝中文无码高清| 性欧美| 亚洲高潮影院| 丝袜足交视频| 啪啪综合网| 久久久久久亚洲Av无码|