client
auth. filter
(parse JWT token)
get userDetails details
HystrixCommand
run
(look to the cache)
obtained
from cache
DB
fallback
(read from database)
HystrixCommand
run
(execute read from db)
Cache
(REDIS)
obtained
from db
fallback
(return null)
authorize request
request
failure
query
failure
yes
yes
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" width="40px" height="48px" viewBox="0 0 40 48" enable-background="new 0 0 40 48" xml:space="preserve">
<defs>
</defs>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="370.2002" y1="655.0938" x2="409.4502" y2="655.0938" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#4D4D4D"/>
<stop offset="0.0558" style="stop-color:#5F5F5F"/>
<stop offset="0.2103" style="stop-color:#8D8D8D"/>
<stop offset="0.3479" style="stop-color:#AEAEAE"/>
<stop offset="0.4623" style="stop-color:#C2C2C2"/>
<stop offset="0.5394" style="stop-color:#C9C9C9"/>
<stop offset="0.6247" style="stop-color:#C5C5C5"/>
<stop offset="0.7072" style="stop-color:#BABABA"/>
<stop offset="0.7885" style="stop-color:#A6A6A6"/>
<stop offset="0.869" style="stop-color:#8B8B8B"/>
<stop offset="0.9484" style="stop-color:#686868"/>
<stop offset="1" style="stop-color:#4D4D4D"/>
</linearGradient>
<path fill="url(#SVGID_1_)" d="M19.625,37.613C8.787,37.613,0,35.738,0,33.425v10c0,2.313,8.787,4.188,19.625,4.188
c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,35.738,30.464,37.613,19.625,37.613z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="370.2002" y1="649.0938" x2="409.4502" y2="649.0938" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#B3B3B3"/>
<stop offset="0.0171" style="stop-color:#B6B6B6"/>
<stop offset="0.235" style="stop-color:#D7D7D7"/>
<stop offset="0.4168" style="stop-color:#EBEBEB"/>
<stop offset="0.5394" style="stop-color:#F2F2F2"/>
<stop offset="0.6579" style="stop-color:#EEEEEE"/>
<stop offset="0.7724" style="stop-color:#E3E3E3"/>
<stop offset="0.8853" style="stop-color:#CFCFCF"/>
<stop offset="0.9965" style="stop-color:#B4B4B4"/>
<stop offset="1" style="stop-color:#B3B3B3"/>
</linearGradient>
<path fill="url(#SVGID_2_)" d="M19.625,37.613c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.927-18.396,3.927
c-9.481,0-17.396-1.959-18.396-3.927l-1.229,2C0,35.738,8.787,37.613,19.625,37.613z"/>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="371.4297" y1="646" x2="408.2217" y2="646" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#C9C9C9"/>
<stop offset="1" style="stop-color:#808080"/>
</linearGradient>
<ellipse fill="url(#SVGID_3_)" cx="19.625" cy="31.425" rx="18.396" ry="3.926"/>
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="370.2002" y1="641.0938" x2="409.4502" y2="641.0938" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#4D4D4D"/>
<stop offset="0.0558" style="stop-color:#5F5F5F"/>
<stop offset="0.2103" style="stop-color:#8D8D8D"/>
<stop offset="0.3479" style="stop-color:#AEAEAE"/>
<stop offset="0.4623" style="stop-color:#C2C2C2"/>
<stop offset="0.5394" style="stop-color:#C9C9C9"/>
<stop offset="0.6247" style="stop-color:#C5C5C5"/>
<stop offset="0.7072" style="stop-color:#BABABA"/>
<stop offset="0.7885" style="stop-color:#A6A6A6"/>
<stop offset="0.869" style="stop-color:#8B8B8B"/>
<stop offset="0.9484" style="stop-color:#686868"/>
<stop offset="1" style="stop-color:#4D4D4D"/>
</linearGradient>
<path fill="url(#SVGID_4_)" d="M19.625,23.613C8.787,23.613,0,21.738,0,19.425v10c0,2.313,8.787,4.188,19.625,4.188
c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,21.738,30.464,23.613,19.625,23.613z"/>
<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="370.2002" y1="635.0938" x2="409.4502" y2="635.0938" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#B3B3B3"/>
<stop offset="0.0171" style="stop-color:#B6B6B6"/>
<stop offset="0.235" style="stop-color:#D7D7D7"/>
<stop offset="0.4168" style="stop-color:#EBEBEB"/>
<stop offset="0.5394" style="stop-color:#F2F2F2"/>
<stop offset="0.6579" style="stop-color:#EEEEEE"/>
<stop offset="0.7724" style="stop-color:#E3E3E3"/>
<stop offset="0.8853" style="stop-color:#CFCFCF"/>
<stop offset="0.9965" style="stop-color:#B4B4B4"/>
<stop offset="1" style="stop-color:#B3B3B3"/>
</linearGradient>
<path fill="url(#SVGID_5_)" d="M19.625,23.613c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.926-18.396,3.926
c-9.481,0-17.396-1.959-18.396-3.926l-1.229,2C0,21.738,8.787,23.613,19.625,23.613z"/>
<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="371.4297" y1="632" x2="408.2217" y2="632" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#C9C9C9"/>
<stop offset="1" style="stop-color:#808080"/>
</linearGradient>
<ellipse fill="url(#SVGID_6_)" cx="19.625" cy="17.426" rx="18.396" ry="3.926"/>
<linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="370.2002" y1="627.5938" x2="409.4502" y2="627.5938" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#4D4D4D"/>
<stop offset="0.0558" style="stop-color:#5F5F5F"/>
<stop offset="0.2103" style="stop-color:#8D8D8D"/>
<stop offset="0.3479" style="stop-color:#AEAEAE"/>
<stop offset="0.4623" style="stop-color:#C2C2C2"/>
<stop offset="0.5394" style="stop-color:#C9C9C9"/>
<stop offset="0.6247" style="stop-color:#C5C5C5"/>
<stop offset="0.7072" style="stop-color:#BABABA"/>
<stop offset="0.7885" style="stop-color:#A6A6A6"/>
<stop offset="0.869" style="stop-color:#8B8B8B"/>
<stop offset="0.9484" style="stop-color:#686868"/>
<stop offset="1" style="stop-color:#4D4D4D"/>
</linearGradient>
<path fill="url(#SVGID_7_)" d="M19.625,10.113C8.787,10.113,0,8.238,0,5.925v10c0,2.313,8.787,4.188,19.625,4.188
c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,8.238,30.464,10.113,19.625,10.113z"/>
<linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="370.2002" y1="621.5938" x2="409.4502" y2="621.5938" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#B3B3B3"/>
<stop offset="0.0171" style="stop-color:#B6B6B6"/>
<stop offset="0.235" style="stop-color:#D7D7D7"/>
<stop offset="0.4168" style="stop-color:#EBEBEB"/>
<stop offset="0.5394" style="stop-color:#F2F2F2"/>
<stop offset="0.6579" style="stop-color:#EEEEEE"/>
<stop offset="0.7724" style="stop-color:#E3E3E3"/>
<stop offset="0.8853" style="stop-color:#CFCFCF"/>
<stop offset="0.9965" style="stop-color:#B4B4B4"/>
<stop offset="1" style="stop-color:#B3B3B3"/>
</linearGradient>
<path fill="url(#SVGID_8_)" d="M19.625,10.113c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.926-18.396,3.926
c-9.481,0-17.396-1.959-18.396-3.926L0,5.925C0,8.238,8.787,10.113,19.625,10.113z"/>
<linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="371.4297" y1="618.5" x2="408.2217" y2="618.5" gradientTransform="matrix(1 0 0 1 -370.2002 -614.5742)">
<stop offset="0" style="stop-color:#C9C9C9"/>
<stop offset="1" style="stop-color:#808080"/>
</linearGradient>
<ellipse fill="url(#SVGID_9_)" cx="19.625" cy="3.926" rx="18.396" ry="3.926"/>
<path opacity="0.24" fill="#FFFFFF" enable-background="new " d="M31.291,46.792c0,0-4.313,0.578-7.249,0.694
C20.917,47.613,15,47.613,15,47.613l-2.443-10.279l-0.119-2.283l-1.231-1.842L9.789,23.024l-0.082-0.119L9.3,20.715l-1.45-1.44
L5.329,8.793c0,0,5.296,0.882,7.234,1.07s8.375,0.25,8.375,0.25l3,9.875l-0.25,1.313l1.063,2.168l2.312,9.644l-0.375,1.875
l1.627,2.193L31.291,46.792z"/>
</svg>
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
x="0px" y="0px" width="41px" height="48px" viewBox="-0.875 -0.887 41 48" enable-background="new -0.875 -0.887 41 48"
xml:space="preserve">
<defs>
</defs>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-979.1445" x2="682.0508" y2="-979.1445" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#3C89C9"/>
<stop offset="0.1482" style="stop-color:#60A6DD"/>
<stop offset="0.3113" style="stop-color:#81C1F0"/>
<stop offset="0.4476" style="stop-color:#95D1FB"/>
<stop offset="0.5394" style="stop-color:#9CD7FF"/>
<stop offset="0.636" style="stop-color:#98D4FD"/>
<stop offset="0.7293" style="stop-color:#8DCAF6"/>
<stop offset="0.8214" style="stop-color:#79BBEB"/>
<stop offset="0.912" style="stop-color:#5EA5DC"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<path fill="url(#SVGID_1_)" d="M19.625,36.763C8.787,36.763,0,34.888,0,32.575v10c0,2.313,8.787,4.188,19.625,4.188
c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,34.888,30.464,36.763,19.625,36.763z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-973.1445" x2="682.0508" y2="-973.1445" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#9CD7FF"/>
<stop offset="0.0039" style="stop-color:#9DD7FF"/>
<stop offset="0.2273" style="stop-color:#BDE5FF"/>
<stop offset="0.4138" style="stop-color:#D1EEFF"/>
<stop offset="0.5394" style="stop-color:#D9F1FF"/>
<stop offset="0.6155" style="stop-color:#D5EFFE"/>
<stop offset="0.6891" style="stop-color:#C9E7FA"/>
<stop offset="0.7617" style="stop-color:#B6DAF3"/>
<stop offset="0.8337" style="stop-color:#9AC8EA"/>
<stop offset="0.9052" style="stop-color:#77B0DD"/>
<stop offset="0.9754" style="stop-color:#4D94CF"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<path fill="url(#SVGID_2_)" d="M19.625,36.763c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.927-18.396,3.927
c-9.481,0-17.396-1.959-18.396-3.927l-1.229,2C0,34.888,8.787,36.763,19.625,36.763z"/>
<path fill="#3C89C9" d="M19.625,26.468c10.16,0,19.625,2.775,19.625,2.775c-0.375,2.721-5.367,5.438-19.554,5.438
c-12.125,0-18.467-2.484-19.541-4.918C-0.127,29.125,9.465,26.468,19.625,26.468z"/>
<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-965.6948" x2="682.0508" y2="-965.6948" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#3C89C9"/>
<stop offset="0.1482" style="stop-color:#60A6DD"/>
<stop offset="0.3113" style="stop-color:#81C1F0"/>
<stop offset="0.4476" style="stop-color:#95D1FB"/>
<stop offset="0.5394" style="stop-color:#9CD7FF"/>
<stop offset="0.636" style="stop-color:#98D4FD"/>
<stop offset="0.7293" style="stop-color:#8DCAF6"/>
<stop offset="0.8214" style="stop-color:#79BBEB"/>
<stop offset="0.912" style="stop-color:#5EA5DC"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<path fill="url(#SVGID_3_)" d="M19.625,23.313C8.787,23.313,0,21.438,0,19.125v10c0,2.313,8.787,4.188,19.625,4.188
c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,21.438,30.464,23.313,19.625,23.313z"/>
<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-959.6948" x2="682.0508" y2="-959.6948" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#9CD7FF"/>
<stop offset="0.0039" style="stop-color:#9DD7FF"/>
<stop offset="0.2273" style="stop-color:#BDE5FF"/>
<stop offset="0.4138" style="stop-color:#D1EEFF"/>
<stop offset="0.5394" style="stop-color:#D9F1FF"/>
<stop offset="0.6155" style="stop-color:#D5EFFE"/>
<stop offset="0.6891" style="stop-color:#C9E7FA"/>
<stop offset="0.7617" style="stop-color:#B6DAF3"/>
<stop offset="0.8337" style="stop-color:#9AC8EA"/>
<stop offset="0.9052" style="stop-color:#77B0DD"/>
<stop offset="0.9754" style="stop-color:#4D94CF"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<path fill="url(#SVGID_4_)" d="M19.625,23.313c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.926-18.396,3.926
c-9.481,0-17.396-1.959-18.396-3.926l-1.229,2C0,21.438,8.787,23.313,19.625,23.313z"/>
<path fill="#3C89C9" d="M19.476,13.019c10.161,0,19.625,2.775,19.625,2.775c-0.375,2.721-5.367,5.438-19.555,5.438
c-12.125,0-18.467-2.485-19.541-4.918C-0.277,15.674,9.316,13.019,19.476,13.019z"/>
<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-952.4946" x2="682.0508" y2="-952.4946" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#3C89C9"/>
<stop offset="0.1482" style="stop-color:#60A6DD"/>
<stop offset="0.3113" style="stop-color:#81C1F0"/>
<stop offset="0.4476" style="stop-color:#95D1FB"/>
<stop offset="0.5394" style="stop-color:#9CD7FF"/>
<stop offset="0.636" style="stop-color:#98D4FD"/>
<stop offset="0.7293" style="stop-color:#8DCAF6"/>
<stop offset="0.8214" style="stop-color:#79BBEB"/>
<stop offset="0.912" style="stop-color:#5EA5DC"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<path fill="url(#SVGID_5_)" d="M19.625,10.113C8.787,10.113,0,8.238,0,5.925v10c0,2.313,8.787,4.188,19.625,4.188
c10.839,0,19.625-1.875,19.625-4.188v-10C39.25,8.238,30.464,10.113,19.625,10.113z"/>
<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="642.8008" y1="-946.4946" x2="682.0508" y2="-946.4946" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#9CD7FF"/>
<stop offset="0.0039" style="stop-color:#9DD7FF"/>
<stop offset="0.2273" style="stop-color:#BDE5FF"/>
<stop offset="0.4138" style="stop-color:#D1EEFF"/>
<stop offset="0.5394" style="stop-color:#D9F1FF"/>
<stop offset="0.6155" style="stop-color:#D5EFFE"/>
<stop offset="0.6891" style="stop-color:#C9E7FA"/>
<stop offset="0.7617" style="stop-color:#B6DAF3"/>
<stop offset="0.8337" style="stop-color:#9AC8EA"/>
<stop offset="0.9052" style="stop-color:#77B0DD"/>
<stop offset="0.9754" style="stop-color:#4D94CF"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<path fill="url(#SVGID_6_)" d="M19.625,10.113c10.839,0,19.625-1.875,19.625-4.188l-1.229-2c0,2.168-8.235,3.926-18.396,3.926
c-9.481,0-17.396-1.959-18.396-3.926L0,5.925C0,8.238,8.787,10.113,19.625,10.113z"/>
<linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="644.0293" y1="-943.4014" x2="680.8223" y2="-943.4014" gradientTransform="matrix(1 0 0 -1 -642.8008 -939.4756)">
<stop offset="0" style="stop-color:#9CD7FF"/>
<stop offset="1" style="stop-color:#3C89C9"/>
</linearGradient>
<ellipse fill="url(#SVGID_7_)" cx="19.625" cy="3.926" rx="18.396" ry="3.926"/>
<path opacity="0.24" fill="#FFFFFF" enable-background="new " d="M31.04,45.982c0,0-4.354,0.664-7.29,0.781
c-3.125,0.125-8.952,0-8.952,0l-2.384-10.292l0.044-2.108l-1.251-1.154L9.789,23.024l-0.082-0.119L9.5,20.529l-1.65-1.254
L5.329,8.793c0,0,4.213,0.903,7.234,1.07s8.375,0.25,8.375,0.25l3,9.875l-0.25,1.313l1.063,2.168l2.312,9.645l-0.521,1.416
l1.46,1.834L31.04,45.982z"/>
</svg>