התצורה מבוססת הנכסים של Spring Data Redis

1. סקירה כללית

אחת האטרקציות העיקריות של Spring Boot היא האופן שבו לעתים קרובות הוא מצמצם את תצורת הצד השלישי למאפיינים בודדים.

במדריך זה נראה כיצד Spring Boot מפשט את העבודה עם Redis.

2. מדוע רדיס?

Redis היא אחת החנויות הפופולריות ביותר במבנה נתונים בזיכרון. מסיבה זו, הוא יכול לשמש כמסד נתונים, מטמון וכמתווך הודעות.

מבחינת ביצועים, זה ידוע בגלל זמן התגובה המהיר שלו. כתוצאה מכך הוא יכול לשרת מאות אלפי פעולות בשנייה וניתן להרחבה בקלות.

וזה מתאים היטב ליישומי אתחול האביב. לדוגמה, אנו יכולים להשתמש בו כמטמון בארכיטקטורת המיקרו-שירותים שלנו. אנו יכולים להשתמש בו גם כמאגר נתונים NoSQL.

3. הפעלת רדיס

כדי להתחיל, בואו ליצור מופע של Redis באמצעות תמונת ה- Docker הרשמית שלהם.

$ docker run -p 16379: 6379 -d redis: 6.0 שרת redis - עובר "mypass"

למעלה, התחלנו רק מופע של רדיס בנמל 16379 עם סיסמה של mypass.

4. סטרטר

Spring מעניק לנו תמיכה נהדרת בחיבור יישומי Spring Boot עם Redis באמצעות Spring Data Redis.

אז הבא, בואו נוודא שיש לנו את אביב-אתחול-המתנע-נתונים-רדיס תלות שלנו pom.xml:

 org.springframework.boot spring-boot-starter-data-redis 2.2.6.RELEASE 

5. חסה

לאחר מכן, בואו להגדיר את הלקוח.

לקוח Java Redis אנו נשתמש בחסה מכיוון ש- Spring Boot משתמש בה כברירת מחדל. עם זאת, יכולנו להשתמש גם בג'דיס.

כך או כך, התוצאה היא מופע של RedisTemplate:

@Bean הציבור RedisTemplate redisTemplate (RedisConnectionFactory connectionFactory) {תבנית RedisTemplate = RedisTemplate חדשה (); template.setConnectionFactory (connectionFactory); // הוסף כאן תצורה ספציפית. תבניות להחזרת מפתח, וכו '. }

6. נכסים

כאשר אנו משתמשים בחסה, איננו צריכים להגדיר את RedisConnectionFactory. מגף האביב עושה את זה בשבילנו.

כל שנותר לנו, אם כן, הוא לציין כמה מאפיינים בתוכנו application.properties קוֹבֶץ:

spring.redis.database = 0 spring.redis.host = localhost spring.redis.port = 16379 spring.redis.password = mypass spring.redis.timeout = 60000

בהתאמה:

  • מאגר מידע מגדיר את אינדקס מסד הנתונים המשמש את מפעל החיבור
  • מנחה הוא המקום בו ממוקם מארח השרת
  • נמל מציין את היציאה בה האזין לשרת
  • סיסמה היא סיסמת הכניסה לשרת, ו
  • פסק זמן קובע את פסק הזמן לחיבור

כמובן, ישנם הרבה מאפיינים אחרים שנוכל להגדיר. הרשימה המלאה של מאפייני התצורה זמינה בתיעוד Spring Boot.

7. הדגמה

לבסוף, בואו ננסה להשתמש בו ביישום שלנו. אם נדמיין א סֵפֶר כיתה ו מאגר ספרים, אנחנו יכולים ליצור ולאחזר סֵפֶרs, באמצעות שלנו RedisTemplate לקיים אינטראקציה עם רדיס כבסיס שלנו:

@Autowired פרטי RedisTemplate redisTemplate; שמירת חלל ציבורי (ספר ספר) {redisTemplate.opsForValue (). set (book.getId (), book); } ספר ציבורי findById (מזהה ארוך) {להחזיר redisTemplate.opsForValue (). קבל (id); }

כברירת מחדל, חסה תנהל עבורנו סדרת סדר וסילוק מחדש, כך שאין עוד מה לעשות בשלב זה. עם זאת, טוב לדעת שאפשר גם להגדיר את זה.

תכונה חשובה נוספת היא מאז RedisTemplateהוא בטוח בחוטים, כך שזה יעבוד כמו שצריך בסביבות מרובות שרשור.

8. מסקנה

במאמר זה, הגדרנו את Spring Boot לדבר עם Redis באמצעות חסה. והשגנו את זה עם מנה ראשונה, סינגל @אפונה תצורה, וקומץ נכסים.

לסיום השתמשנו ב RedisTemplate שהרדיס ישמש כגב פשוט.

ניתן למצוא את הדוגמה המלאה ב- GitHub.


$config[zx-auto] not found$config[zx-overlay] not found