Upload
david19775891
View
212
Download
0
Embed Size (px)
Citation preview
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 1/9
US008423989B2
1 2 ) Unlted States Patent 1 0 ) P a t e n t N o . : U S 8 , 4 2 3 , 9 8 9 B2Fedok t a ] . 4 5 ) Date o f P a t e n t : A p r . 1 6 , 2013
54) SOFTWAREPARAMETERMANAGEMENT 7,305,395 B1 * 12/2007 Umamageswaran e t a 1 . . . . . . . . . . 1 / 1
7 ,4 5 7 ,926 B2 1 1 /2 0 0 8 Shen t a 1 . . . . . . . . . . . . . . . . . . . . . 7 1 1 / 1 5 6> I <
75) Inventors: EricFedok,Catasauqua,PAUS);Jay * gem l/l, , rown t a1 . .. .. 345/541
C0150“,BeIh1ehem,PA0J$);D°n 2002/0133504 Al* 9/2002 Vlahos e t a 1 . . . 7 0 7 / 1 0 4 . 1
Deasey, Easton,PA US) 2003/0105838 A1* 6/2003 Presley . . . . . . . . . . . . . . . .. 709/220
2003/0204525 A1* 10/2003 Toume t a 1 . . . 70 7 /1 03 R
7 3 ) A s s i g n e e ; s y n c h o n o s s T e c h n o l o g i e s a l n c u 2 0 0 4 / 0 2 0 5 3 0 7 Al* 1 0 / 2 0 0 4 P u l l e n e t a l . 7 1 1 / 1 5 8Bridgewater NJ Us) 2 0 0 5 / 0 0 9 1 6 5 1 A 1 * 4 / 2 0 0 5 C u r t l s e t a 1 . 7 1 7 / 1 6 8
’ 2005/0144267 A1* 6/2005 Maron . . . . . . . . 709/223
_ _ _ _ _ 2005/0268038 A1* 12/2005 Yasue . . . . . . . .. 711/118
* ) N o t 1 c e : S u b j e c t t o any d i s c l a i m e r , t h e term of h 1 s 2 0 0 6 / 0 0 2 0 6 8 9 A 1 * 1 / 2 0 0 6 Roman t a 1 7 0 9 / 2 2 0
patent i s extended or adjusted under 35 2007/0050548 A1* 3/2007 B a l i e t a 1 . . . . . . . 711/118
U_S_C_ 1 5 4 1 ) ) by 1005 d a y s _ 2 0 0 7 / 0 1 4 0 4 6 0 Al* 6 / 2 0 0 7 C a i e t a 1 379/218012007/0226715 A1* 9/2007 Kimura t a 1 . . . . . . . . . 717/148
_ 2008/0027948 A1* 1/2008 Corley t a 1 . . . . . . . . . . .. 707/10
2 1 ) APPLNO 12/114’153 2 0 0 8 / 0 1 4 7 6 7 5 Al* 6 / 2 0 0 8 E n g e h a u s e n e t a 1 . . . 7 0 7 / 1 0
_ 2008/0147974 A1* 6/2008 Madison t a 1 . . . . . . . . 711/118
2 2 ) F l l e d l May , 2008 2 0 0 9 / 0 1 2 5 2 2 8 Al* 5 / 2 0 0 9 D i c k e e t a l . 7 0 1 / 2 0 1
2009/0182941 A1* 7 / 2 0 0 9 Turk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711/118
65) Prior Publication Data* c i t e d by exam1ner
US 009/0276768 A 1 N o v . 5 , 2009 Primary Examiner* ewis A u l l o c k , J r .
5 1 ) I n t . C l . A s s i s t a n t Examiner * r a n c i s c o Aponte
G06F 9 / 4 4 2 0 0 6 - 0 1 ) 7 4 ) A t t o r n e y , A g e n t , o r Firm * aplan B r e y e r SchwarZ &
5 2 ) US. C l . O t t e s e n , LLPUSPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 717/168
5 8 ) Field of Classi?cation Search . . . . . . . . . . 7l7/l0lil78; 5 7 ) ABSTRACT
7 0 1 / 2 0 1 ; 7 0 7 / 6 0 0 ’ 6 0 7 ; 7 1 1 / 1 1 8 ’ 1 1 9 ’ 1 3 3 ’ A e t h o d a n d a p p a r a t u s i s d i s c l o s e d f o r a l l o w i n g t h e u p d a t
_ _ 7 1 1 / 1 5 8 ’ 2 2 0 ; 7 9 9 / 2 2 0 ’ 226 i n g and o v e r r i d i n g o f s o f t w a r e p a r a m e t e r s used by one o r
S e e a p p h c a n o n ? l e f o r C o m p l e t e S e a r c h h l s t o r y ‘ more s o f t w a r e p r o g r a m s . T h e p a r a m e t e r s a r e p r e f e r a b l y i n
5 6 ) R e f e r e n c e s C i t e d c a c h e . When t h e s y s t e m n e e d s a n y s u c h p a r a m e t e r , i t ? r s t
U . S . PATENT DOCUMENTS
6,006,034 A 1 2 /1 9 9 9 eath t a 1 . . . . . . . . . . . . . . . . . . . . 7 1 7 / 1 7 0
6,061,693 A 5/2000 Carneyetal. . . . . . . . . . . 1 / 1
6 , 4 8 7 , 54 7 B1 * 11/2002 Ellison e t a 1 . . . . . . . . . . . 707/600
6,615,253 B1* 9/2003 Bowman-Amuah . . . . . . 709/219
6 , 6 5 1 , 1 4 2 B 1 * 1 1 / 2 0 0 3 G o r e l i k e t a 1 . 7 1 1 / 1 1 9
6 ,90 1 ,483 B2 5 / 200 5 Robinson t a 1 . . . . . . . . . . . . . . 7 1 1 / 1 3 3
1 0 2
K
2. if n o t in c a c h e , c h e c k
d a i a b a s a
c h e c k s c a c h e , t h e n a p r e f e r a b l y r e m o t e l y l o c a t e d d a t a b a s e ,
and t h e n , p r e f e r a b l y a ? a t ? l e on t h e same computer a s t h e
c a c h e . The c h e c k i n g i s d o n e i n t h e f o r e g o i n g o r d e r , a n d t h e
p a r a m e t e r i s used upon l o c a t i n g a c u r r e n t V e r s i o n o f t . I f t h e
c u r r e n t V e r s i o n i s o b t a i n e d fr om anywhere o t h e r t h a n t h ec a c h e , i t i s p u t i n t o c a c h e .
1 4 C l a i m s , 2 Drawing S h e e t s
l
l
I
I
I
I
I
I
I
I
I
I
I
IDA T A B ASE SE RVE R I
cache
103
|
l g 1 1 0 I
I A p p l i c a t i o n :| I 5. if data x i s t s In ? l e .
1 0Rlirim a i u s i c / /
I p p I I m A I n n
3, if d a t a e x i s t s ind a t a b a s e , s h a r e in
4 . If no d a t a f o u n d y e t ,
6 . r e i u r n r e t r i e v e d d a t a
1
APPLICATION SERVER
check i l e
I
I
I
|
I
I
|
I
I I
s t o r e I n cache 1
I
I
l
I
I
I
I
I
I
I
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 2/9
US. Patent A p r . 1 6 , 2 0 1 3 S h e e t 1 0 1 2 U S 8 , 4 2 3 , 9 8 9 B2
F I G . 1 / \ _ r 1 0 8I n — — _ — m H w _ _ _ _ _ _ _ _ _ _ _ _ — _ _ _ _ _ _ _ — _ _ _ _‘ _I
|
|
I 1 0 2
| Kl I
V |
E g l
I ‘ f : |I g i
I sl \‘j I
2 . i f n o t i n c a c h e , c h e c k II
|d a t a b a s e DATABASE SERVER
I . . APPLICATIONSERVER
3 . I f data e x i s t s m
d a t a b a s e , s t o r e i ncache
103 104
rF_ _ _ _ _ _ _ _ _ _ _ _ 4. i f nodata foundyet,
I l | n ~ c h e c k f i l e: 1 10 I — memory : F l a t ? l a
: Applicationl c a c h e 4 II I t 5 . i f data e x i s t s i n ? l e ,
s t o r e i n cache
1 . check cache 6 . r e t u r n r e t r i e v e d d a t a
‘ I
1 O 5R e t r i e v e v a l u e f o r /
a p p l i c a t i o n
I
I
|
l
I
|
II
I
l
I
I
i
l
I
I
l
|
l
II
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 3/9
US. Patent A p r . 1 6 , 2 0 1 3 S h e e t 2 o f 2 U S 8 , 4 2 3 , 9 8 9 B2
F I G . 2
209 108
DB erver DB erver
104 103
107 AS
205 206 207
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 4/9
US 8 , 4 2 3 , 9 8 9 B2
1
SOFTWARE PARAMETER MANAGEMENT
TECHNICAL I E L D
T h i s i n v e n t i o n r e l a t e s t o computer o f t w a r e , and more s p e
c i ? c a l l y , t o an improved method f o r managing one o r more
p a r a m e t e r s t h a t may be used by one o r more s o f t w a r e a p p l ic a t i o n s .
BACKGROUND OFTHE INVENTION
S o f t w a r e a p p l i c a t i o n s a r e u b i q u i t o u s i n modern b u s i n e s s .
Such s o f t w a r e a p p l i c a t i o n s a r e o f t e n d e s i g n e d t o b e ? e x i b l e
s o t h a t business u s e r s may customiZe them o t h e i r own ar
t i c u l a r n e e d s .
O f t e n , t h e s p e c i ? c c u s t o m i Z a t i o n r e q u i r e d v a r i e s t h r o u g h
out an o r g a n i z a t i o n , and may ary over time even within one
o r g a n i Z a t i o n a s t h e o r g a n i Z a t i o n u s e s t h e s o f t w a r e . F o r
example, s o f t w a r e may e i n s t a l l e d t o p r o v i d e one o r more
r e p o r t f o r m a t s , b u t a b u s i n e s s e n t i t y may d e c i d e t h a t o t h e r
formats a r e needed a f t e r some t i m e . Error messages can be
?xed t t h e t i m e o f s o f t w a r e i n s t a l l a t i o n , b u t a s t h e or g a n i Z a
t i o n d i s c o v e r s o t h e r p o t e n t i a l e r r o r c o n d i t i o n s , t h e need may
a r i s e t o be a b l e t o e a s i l y a l t e r t h e e r r o r c o n d i t i o n s . G e n e r a l l y ,
s o f t w a r e a p p l i c a t i o n s may r e q u i r e one o r more p a r a m e t e r s
t h a n t h e y n e e d t o b e a l t e r e d . The m a n n e r , f r e q u e n c y , and
s p e c i ? c s o f how t h e s o f t w a r e w i l l need t o b e a l t e r e d and
c u s t o m i Z e d i s o f t e n unknown t t h e t i m e o f i n s t a l l a t i o n .
Many i m e s i t i s r e q u i r e d t o t a k e t h e s o f t w a r e a p p l i c a t i o n
o u t o f s e r v i c e i n o r d e r t o u p d a t e t h e s e p a r a m e t e r s . I n s i t u a
t i o n s where h e p a r a m e t e r s a r e h a r d c o d e d i n t o t h e s o f t w a r e ,
t h i s r e q u i r e m e n t m a n d a t e s t h a t t h e a p p l i c a t i on b e t a k e n o u t o f
s e r v i c e . Moreover, i f t h e s o f t w a r e i s running on s e r v e r with
o t h e r a p p l i c a t i o n s , o r i s o t h e r w i s e i n t e r t w i n e d w i t h s u c h o t h e r
a p p l i c a t i o n s , t h e y may h a v e t o b e t a k e n o f f l i n e a l s o . F o r
m i s s i o n c r i t i c a l s o f t w a r e , t h i s p r e s e n t s a problem o r a n o r g a
n i Z a t i o n .Even when a r a m e t e r s u s e d by h e s o f t w a r e a p p l i c a t i o n a r e
n o t hard c o d e d , i f such a r a m e t e r s a r e p l a c e d i n a ? a t ? l e on
an a p p l i c a t i o n s e r v e r where t h e s o f t w a r e a p p l i c a t i o n i s run
n i n g , t h e s o f t w a r e a p p l i c a t i o n may t i l l need o b e t a k e n o u t o f
s e r v i c e i n o r d e r t o u p d a t e t h e p a r a m e t e r s .
Adding t o t h e problem i s t h a t t h e r e i s a l w a y s a need t o
maximiZe t h e s p e e d a t which s u c h s o f t w a r e a p p l i c a t i o n s
e x e c u t e . T h i s i s p a r t i c u l a r l y t r u e i n a m u l t i u s e r e n v i r o n m e n t ,
where many s e r s a r e a c c e s s i n g a s i n g l e a p p l i c a t i o n s e r v e r . I n
s u c h an n v i r o n m e n t , i n o r d e r t o maximiZe h e s p e e d and h u s
m i n i m i z e r e s p o n s e t i m e o f t h e s o f t w a r e a p p l i c a t i o n , i t i s
b e n e ? c i a l t o h a v e t h e needed p a r a m e t e r s e i t h e r h a r d coded
i n t o t h e s o f t w a r e o r s t o r e d l o c a l l y on ? a t ? l e i n t h e comput
e r ’ s memory. T h i s a l l o w s t h e f a s t e s t a c c e s s t o such param
e t e r s , and h u s , most ? i c i e n t e x e c u t i o n o f h e s o f t w a r e . How
e v e r , i n t e r t w i n i n g t h e s e p a r a m e t e r s s o c l o s e l y w i t h t h e a c t u a l
a p p l i c a t i o n a l s o o p e r a t e s a g a i n s t t h e i d e a o f p r o v i d i n g ? e x
i b i l i t y s o t h a t such a r a m e t e r s can be a l t e r e d a s needed with
o u t t a k i n g t h e s y s t e m o u t o f s e r v i c e .
T h u s , t h e n e e d t o p r o v i d e ? e x i b i l i t y o p e r a t e s a g a i n s t t h er e q u i r e m e n t t h a t t h e p a r a m e t e r s be a v a i l a b l e a s q u i c k l y a s
p o s s i b l e t o t h e s o f t w a r e a p p l i c a t i o n . S p e c i ? c a l l y , t h e more
i n t e r t w i n e d t h e p a r a m e t e r s needed by t h e s o f t w a r e a r e w i t h
t h e a c t u a l s o f t w a r e c o d e e . g . , h a r d c o d e d ) , t h e more i ? i c u l t
i t i s t o a l t e r t h e p a r a m e t e r s w i t h o u t t a k i n g down h e s y s t e m ,
a n d t h u s , t h e l e s s ? e x i b l e t h e s o f t w a r e s y s t e m i s . G e n e r a l l y
h o w e v e r , t h e l e s s i n t e r t w i n e d t h e p a r a m e t e r s a r e w i t h t h e
s o f t w a r e a p p l i c a t i o n , t h e more e a s i l y t h e y c a n be a l t e r e d a s
n e e d e d .
20
25
30
35
40
45
50
55
60
6 5
2
I n v i e w o f t h e f o r e g o i n g c o m p e t i n g r e q u i r e m e n t s , t h e r e
e x i s t s a need n t h e a r t t o o p t i m i Z e s o f t w a r e c o n c u r r e n t l y b o t h
i n t e r m s o f i t s ? e x i b i l i t y t o p e r m i t a l t e r a t i o n s o f p a r a m e t e r s
w i t h o u t t a k i n g t h e s y s t e m o u t o f s e r v i c e f o r a n e x t e n d e d
l e n g t h o f t i m e , a n d a l s o t o p r o v i d e t y p e i n t e r t w i n i n g o f t h e
p a r a m e t e r s n e e d e d w i t h t h e a c t u a l s o f t w a r e , i n o r d e r t o maxi
miZe s p e e d a t minimiZe e s p o n s e t i m e . To d a t e , t h e r e e x i s t s noknown m e t h o d o f p r o p e r l y b a l a n c i n g t h e s e r e q u i r e m e n t s .
BRIEF DESCRIPTION OFTHE DRAWINGS
F I G . 1 shows a c o n c e p t u a l d i a g r a m o f a n e x e m p l a r y
embodiment o f t h e p r e s e n t i n v e n t i o n , a l o n g w i t h a n exem
p l a r y s e t o f s t e p s f o r i m p l e m e n t i n g o n e s a m p l e m e t h o d o l o g y
i n a c c o r d a n c e w i t h t h e i n v e n t i o n ; a n d
F I G . 2 d e p i c t s t h e components o f h e p r e s e n t i n v e n t i o n i n a
network e n v i r o n m e n t .
DETAILED DESCRIPTION OFTHE PREFERRED
EMBODIMENT
F I G . 1 d e p i c t s a c o n c e p t u a l d i a g r a m w i t h a n e x e m p l a r y
embodiment o f t h e p r e s e n t i n v e n t i o n . The a r r a n g e m e n t o fF I G . 1 i n c l u d e s a computer y s t e m 100 h a t c o m p r i s e s a t l e a s t
an p p l i c a t i o n s e r v e r 107 and database s e r v e r 1 0 8 . Not shown
i n FIG. 1 a r e o p t i o n a l l o c a l c l i e n t PCs o r t e r m i n a l s which may
connect with the application server t o execute one or more
a p p l i c a t i o n s . I t i s n o t e d t h a t t h e a r r a n g e m e n t i n F I G . 1 a l s o
d o e s n o t show v a r i e t y o f o t h e r c o m p u t e r s and e r m i n a l s t h a t
may e connected t o t h e d a t a b a s e s e r v e r 1 0 8 .
The a r r a n g e m e n t o f F I G . 1 i s e x e m p l a r y o n l y , a n d i s n o t
i n t e n d e d t o l i m i t t h e n e a r l y i n ? n i t e v a r i e t y o f c o m p u t e r n e t
works t h a t may be con?gured t o implement t h e same f u n c
t i o n a l i t y . Each o f t h e d a t a b a s e s e r v e r and a p p l i c a t i o n s e r v e r
may b e d i s t r i b u t e d among l u r a l c o m p u t e r s . M o r e o v e r , t h e
a p p l i c a t i o n and d a t a b a s e s e r v e r may be imp lemented on h e
same or d i f f e r e n t computers.
I n o p e r a t i o n , a n e x e m p l a r y a p p l i c a t i o n r e p r e s e n t e d b yblock 110 e x e c u t e s on t h e a p p l i c a t i o n s e r v e r 1 0 7 . When h e
a p p l i c a t i o n r e q u i r e s a p a r t i c u l a r p a r a m e t e r , t h e a p p l i c a t i o n? r s t c h e c k s c a c h e memory 1 0 3 i f t h e p a r a m e t e r i s f o u n d i n
c a c h e memory 0 3 , a n d i f t h e c a c h e i s deemed u r r e n t enough
t o b e u s e f u l , t h e a p p l i c a t i o n 1 1 0 s i m p l y u t i l i Z e s t h e p a r a m e t e r
from c a c h e .
Whether o r not a parameter i n cache i s deemed c u r r e n t
e n o u g h may v a r y b y p a r a m e t e r . S p e c i ? c a l l y , t h e s y s t e m
d e s i g n e d a n d t y p i c a l l y k n o w s i n a d v a n c e a p p r o x i m a t e l y how
o f t e n t h e cache memory s h o u l d be updated i t h a new v a l u e .
The v a l u e t h a t i s t o r e p l a c e t h e c a c h e v a l u e comes from
a n o t h e r s o u r c e , f o r e x a m p l e , d a t a b a s e 1 0 2 . T h u s , i f t h e
d e s i r e d p a r a m e t e r i s e i t h e r n o t found n c a c h e memory 0 3 , o r
t h e a p p l i c a t i o n d e t e r m i n e s t h a t , a l t h o u g h t h e p a r a m e t e r i s
f o u n d i n c a c h e memory 1 0 3 , i t h a s t i m e d o u t , t h e n e x t s t e p
d e s c r i b e d below i s e x e c u t e d .
I f e i t h e r t h e p a r a m e t e r h a s timed o u t i n c a c h e , o r i f t i s n o t
p r e s e n t a t a l l i n c a c h e , t h e n an a d d i t i o n a l s o u r c e such a s
d a t a b a s e 1 0 2 o r o t h e r ? l e ) i s c h e c k e d f o r a c u r r e n t v e r s i o n o f
t h e n e c e s s a r y p a r a m e t e r . D a t a b a s e 1 0 2 i s p r e f e r a b l y , b u t n o t
n e c e s s a r i l y , a d a t a b a s e a n d i s a l s o p r e f e r a b l y i m p l e m e n t e d on
a s e p a r a t e d a t a b a s e s e r v e r a s shown n F I G . 1 . B y implement
i n g database 102 on a s e p a r a t e s e r v e r 1 0 8 , new d a t a can be
p o p u l a t e d i n t o t h e d a t a b a s e w i t h o u t t a k i n g down h e s y s t e m ,
and h i s d a t a w i l l ?nd t s way n t o t h e cache a s a r e s u l t of h e
m e t h o d o l o g y d e s c r i b e d h e r e i n . M o r e o v e r , i f t h e d a t a b a s e i s
n o t o p e r a b l e , t h e sy stem can s i m p l y move t o t h e n e x t s t e p
shown i n F I G . 1 , j u s t t h e same a s i f i t d i d n o t ?nd h e d a t a i n
d a t a b a s e 1 0 2 .
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 5/9
US 8 , 4 2 3 , 9 8 9 B2
3
I f t h e r e q u i r e d p a r a m e t e r i s l o c a t e d i n d a t a b a s e 1 0 2 , i t i s
W r i t t e n t o c a c h e memory 1 0 3 and l s o u t i l i z e d by p p l i c a t i o n
1 1 0 . H o w e v e r , i f t h e p a r a m e t e r i s n o t f o u n d i n d a t a b a s e 1 0 2 ,
t h e ? a t ? l e 1 0 4 i s t h e n c h e c k e d , a n d t h e d a t a p r e s u m a b l y
l o c a t e d . I n a l l e v e n t s , h o W e v e r , t h e v a l u e o f t h e p a r a m e t e r i s
r e t r i e v e d a t b l o c k 1 0 5 and l a c e d i n t o c a c h e memory 1 0 3 f o r
s u b s e q u e n t u s e .
F I G . 2 d e p i c t s a n d a d d i t i o n a l embodiment o f t h e p r e s e n t
i n v e n t i o n i n Which h e a p p l i c a t i o n s e r v e r i n c l u d e s p l u r a l t e r
m i n a l s 2 0 5 - 2 0 7 , and tWo d a t a b a s e s e r v e r s 209 and 1 0 8 . I n
such c a s e , a parameter n c a c h e memory may l s o s p e c i f y , i n
t h e c a c h e , Which of h e d a t a b a s e s e r v e r s t h e 209 o r 108 o use
f o r t h e u p d a t e d p a r a m e t e r . I n t h i s m a n n e r , i f t h e n e e d e d
p a r a m e t e r i s n o t i n t h e c a c h e a t a l l , t h e n e x t s t e p Would be o
check h e database s e r v e r s 108 and/or 1 0 9 . These tWo s e r v e r s
may e p r e s e n t one i v e and one a c k u p , o r , t h e y may e p r e s e n t
m u l t i p l e s e r v e r s f o r s t o r i n g a l a r g e amount o f d a t a , s u c h t h a t
t h e d a t a b a s e i s implemented betWeen h e tWo o f t h e m .
A l t e r n a t i v e l y , i f t h e p a r a m e t e r i s i n c a c h e 1 0 3 b u t h a s t i m e
o u t , t h e c a c h e v e r s i o n c o u l d i n c l u d e a p o i n t e r t o t h e s p e c i ? c
d a t a b a s e s e r v e r t o c h e c k , t h e r e b y e l i m i n a t i n g t he need t o
check l u r a l s e r v e r s .
P r e f e r a b l y , t h e s y s t e m d e s i g n e r W i l l a s c e r t a i n i n a d v a n c eWhich f numerous s o f t W a r e p a r a m e t e r s c h a n g e o f t e n enough
t o use h e d a t a b a s e o r o t h e r ? l e 1 0 2 , and Whi ch do n o t change
s o f r e q u e n t l y . T h u s , f o r p a r a m e t e r s l i k e p a s s W o r d s , f o re x a m p l e , Which s e r s t e n d t o m a i n t a i n l o n g t e r m , t h e ? a t ? l e
o r har d coding can be s e d . For parameters such s a customer
balance i n an a c c o u n t , t h e d a t a b a s e s e r v e r 108 a nd d a t a b a s e
102 can be used a s t h e s o u r c e of h e s e . T h u s , a l l p a r a m e t e r s
W i l l g r a d u a l l y b e moved i n t o c a c h e a s t h e s o f t W a r e a p p l i c a
t i o n s ) t h a t need them a r e r u n on t h e a p p l i c a t i o n s e r v e r 1 0 7 ,
a n d t h e c a c h e W i l l by k e p t u p t o d a t e u s i n g t h e t i m e o u t
f e a t u r e s d e s c r i b e d a b o v e .
I n o n e e m b o d i m e n t , a l l p a r a m e t e r s t h a t may e u s e d by h e
s o f t W a r e a p p l i c a t i o n and Which v a r y a r e d i v i d e d i n t o g r o u p s
i n advance of s e . P a r a m e t e r s e x p e c t e d t o be up dated more
f r e q u e n t l y t h a n t h e p r e d e t e r m i n e d t h r e s h o l d a r e p l a c e d i n t ot h e d a t a b a s e 1 0 2 , W h e r e a s , p a r a m e t e r s e x p e c t e d t o b e u p d a t e d
l e s s f r e q u e n t l y t h a n t h e p r e d e t e r m i n e d t h r e s h o l d a r e p l a c e d
i n t o t h e ? a t ? l e . I n t h i s manner, once h e a p p l i c a t i o n s ) a r e up
a n d r u n n i n g , t h e p a r a m e t e r s g r a d u a l l y m i g r a t e i n t o c a c h e , a n d
t h e o n e s t h a t need o be updated more f r e q u e n t l y t h a n t h e t h e
t h r e s h o l d c a n b e c h a n g e d W h i l e t h e s o f t W a r e a p p l i c a t i o n s
u s i n g them a r e “ l i v e ” .
N o t a b l y , p a r a m e t e r s i n t h e ? a t ? l e 104 c a n a l s o b e p u t i n t o
t h e d a t a b a s e ? l e 1 0 2 . Such a s i t u a t i o n W i l l a r i s e When a
p a r a m e t e r Was p r e v i o u s l y s e l e c t e d f o r t h e ? a t ? l e , b u t t h e
d e v e l o p e r W i s h e s t o o v e r r i d e t h e v a l u e . R a t h e r t h a n h a v e t o
t a k e t h e a p p l i c a t i o n o u t o f s e r v i c e t o u p d a t e t h e ? a t ? l e , t h e
p a r a m e t e r c a n j u s t b e p u t i n t o t h e d a t a b a s e 1 0 2 . Due t o t h e
o r d e r i n Which h e s o u r c e s f o r t h e parameter a r e c h e c k e d , a s
d e s c r i b e d a b o ve , t h e s y s t e m W i l l c o n t i n u e t o o p e r a t e , b u t t h e
d a t a b a s e ? l e W i l l trump h e ? a t ? l e b e c a u s e t i s c h e c k e d ? r s t .
The above e c h n i q u e can l s o be used o a l l o W a p a r a m e t e r
i n t h e ? a t ? l e , and Which a n t h u s b e a c c e s s e d v e r y q u i c k l y by
t h e s o f t W a r e a p p l i c a t i o n , t o b e a l t e r e d W i t h o u t h a v i n g t o t a k e
doWn s o f t W a r e a p p l i c a t i o n u s i n g t h o s e p a r a m e t e r s . S p e c i ?
c a l l y , c o n s i d e r t h e c a s e Where t h e d e s i r e d p a r a m e t e r i s one
t h a t d o e s n o t v a r y a l l t h a t o f t e n , s o i t i s p l a c e d i n ? a t ? l e 1 0 4 .
I f a time comes t h a t such a parameter must be changed, t h e
s y s t e m c a n t h e n c h a n g e i t b y p l a c i n g t h e p a r a m e t e r i n d a t a
b a s e 1 0 2 , e v e n t h o u g h i t i s n o t n o r m a l l y k e p t t h e r e .Due o t h e o r d e r i n Which h e s o f t W a r e a p p l i c a t i o n c h e c k s
f o r s o u r c e s o f t h e p a r a m e t e r d e s c r i b e d a b o v e ) , t h e s o f t W a r e
a p p l i c a t i o n W i l l c o n t i n u e o p e r a t i n g , h o W e v e r , i t W i l l d o s o
u s i n g t h e neW v a l u e o f h e p a r a m e t e r i n d a t a b a s e 1 0 2 . T h e n , i f
20
25
30
35
40
45
50
55
60
6 5
4
i t i s d e s i r e d t o p e r m i t e v e n f a s t e r a c c e s s by l a c i n g t h e param
e t e r i n ? a t ? l e 1 0 4 , a t l e a s t tWo m e t h o d o l o g i e s can be t i l i Z e d .
F i r s t , t h e ? a t ? l e d can be up datedWith h e neW v a l u e a t a t i m e
When h e a p p l i c a t i o n i s n o t u s e d , o r a t l e a s t l e s s c r i t i c a l e . g . ;
o v e r n i g h t ) . A l t e r n a t i v e l y , t h e s o f t W a r e i t s e l f c a n b e p r o
grammed, a n d t h e p a r a m e t e r i n d a t a b a s e 1 0 2 t a g g e d , s o t h a t
t h e s o f t W a r e i t s e l f i s i n s t r u c t e d t o p l a c e t h e neW p a r a m e t e r
i n t o t h e ? a t ? l e a f t e r i t i s ? r s t r e a d i n t o c a c h e from t h e
d a t a b a s e 1 0 2 .
The s y s t e m may a l s o k e e p t r a c k o f t h e number o f t i m e s a
p a r a m e t e r i s r e p l a c e d W i t h i n f o r m a t i o n f r o m t h e d a t a b a s e . I n
t h i s m a n n e r , i f a p a r a m e t e r Was d e s i g n a t e d by t h e d e v e l o p e r
f o r t h e ? a t ? l e , b u t t h e s y s t e m d e t e c t s t h a t i t i s c h a n g i n g t o o
o f t e n , i t c a n a l e r t t h e d e v e l o p e r t o r e a l l o c a t e s u c h p a r a m e t e r t o
t h e d a t a b a s e ? l e 1 0 2 .
While h e a b o v e d e s c r i b e s t h e p r e f e r r e d embodiment f h e
p r e s e n t i n v e n t i o n , v a r i o u s o t h e r m o d i ? c a t i o n s c a n b e i m p l e
mented W i t h o u t d e p a r t i n g t h e s p i r i t a n d s c o p e o f t h e i n v e n
t i o n .
What s c l a i m e d :
1 . A ethod c o m p r i s i n g :
e x e c u t i n g a s o f t W a r e a p p l i c a t i o n on an a p p l i c a t i o n s e r v e r ,
W h e r e i n t h e a p p l i c a t i o n s o f t W a r e c o m p r i s e s a s e q u e n c eo f s t e p s ;
a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f c h a n g e s m a d et o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a ? a t ? l e on s a i d a p p l i c a t i o n s e r v e r , o t h e r W i s e t h e
a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d ? r s t p r e d e t e r
mined a r a m e t e r i n a d a t a b a s e o f t h e a p p l i c a t i o n s e r v e r ;
i n r e s p o n s e o f t h e r e c o m m e n d a t i o n , o v e r r i d i n g , b y t h e
d e v e l o p e r , t h e d e s i g n a t i o n o f s t o r a g e o f s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r f r o m t h e ? a t ? l e , t o s t o r a g e i n t h e
d a t a b a s e ;
When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d andr e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :checking a cache on s a i d a p p l i c a t i o n s e r v e r f o r a v a l i d
v a l u e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d param
e t e r W i t h o u t t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f
s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d c a c h e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r f r o m s a i d c a c h e , W h e r e i n s a i d v a l i d v a l u e i s
deemed p r e s e n t and v a l i d i n s a i d c a c h e i f s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r i s l o c a t e d i n c a c h e and f a n
e x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d c a c h e , c h e c k i n g s a i d d a t a b a s e on a d a t a b a s e
s e r v e r f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r W i t h o u t
t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f s e r v i c e ,Wherein h e a p p l i c a t i o n s e r v e r and h e d a t a b a s e s e r v e r
are d i f f e r e n t s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d d a t a
b a s e , m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
t h e d a t a b a s e i n t o s a i d c a c h e on s a i d a p p l i c a t i o n
s e r v e r ; and
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d d a t a b a s e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from a i d ? a t ? l e on a i d a p p l i c a t i o n s e r v e r ,
a n d m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
s a i d ? a t ? l e i n t o s a i d c a c h e ; and
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 6/9
US 8 , 4 2 3 , 9 8 9 B2
5
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
2 . The method o f c l a i m 1 , W h e r e i n t h e e x p i r a t i o n t i m e
a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s d i f f e r e n t
from h e e x p i r a t i o n t i m e a s s o c i a t e d W i t h a t l e a s t one o t h e r o fs a i d p r e d e t e r m i n e d p a r a m e t e r s .
3 . A ethod c o m p r i s i n g :
e x e c u t i n g a s o f t w a r e a p p l i c a t i o n on an a p p l i c a t i o n s e r v e r ,
W h e r e i n t h e a p p l i c a t i o n s o f t W a r e c o m p r i s e s a s e q u e n c e
o f s t e p s ;
a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f c h a n g e s m a d e
t o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a ? a t ? l e on s a i d a p p l i c a t i o n s e r v e r , o t h e r W i s e t h e
a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d ? r s t p r e d e t e r
mined a r a m e t e r i n a d a t a b a s e o f t h e a p p l i c a t i o n s e r v e r ;
s t o r i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d ? a t ? l e o f
s a i d a p p l i c a t i o n s e r v e r based on s a i d recommendation;
c r e a t i n g a n u p d a t e v a l u e f o r s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r o f s a i d s e t o f p r e d e t e r m i n e d p a r a m e t e r s ; s t o r
i n g s a i d u p d a t e v a l u e f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m
e t e r i n s a i d d a t a b a s e o f t h e a p p l i c a t i o n s e r v e r ;
When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d and
r e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :
checking a cache on s a i d a p p l i c a t i o n s e r v e r f o r a v a l i d
v a l u e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d param
e t e r W i t h o u t t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f
s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d c a c h e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r f r o m s a i d c a c h e , W h e r e i n s a i d v a l i d v a l u e i s
deemed p r e s e n t and v a l i d i n s a i d c a c h e i f s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r i s l o c a t e d i n c a c h e and f a n
e x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d c a c h e , c h e c k i n g s a i d d a t a b a s e on a d a t a b a s e
s e r v e r f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r W i t h o u t
t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f s e r v i c e ,Wherein h e a p p l i c a t i o n s e r v e r and h e d a t a b a s e s e r v e r
are d i f f e r e n t s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d d a t a
b a s e , m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
t h e d a t a b a s e i n t o s a i d c a c h e on s a i d a p p l i c a t i o n
s e r v e r ; and
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d d a t a b a s e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from a i d ? a t ? l e on a i d a p p l i c a t i o n s e r v e r ,
a n d m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
s a i d ? a t ? l e i n t o s a i d c a c h e ; and
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d ; W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
4 . The method o f c l a i m 3 , f u r t h e r c o m p r i s i n g :
i d e n t i f y i n g one o r more a r a m e t e r s con?gured f o r s t o r a g e
on s a i d ? a t ? l e and s t o r e d on s a i d ? a t ? l e t h a t a r e being
u p d a t e d a t a f r e q u e n c y t h a t e x c e e d s a n e x p e c t e d u p d a t e
0 1
20
25
30
35
40
45
50
55
60
6 5
6
f r e q u e n c y l e v e l ; a n d r e l o c a t i n g s a i d i d e n t i ? e d p a r a m
e t e r s from a i d ? a t ? l e t o s a i d remote l e i n s a i d d a t a b a s e
server.
5 . A ethod c o m p r i s i n g :
e x e c u t i n g a s o f t W a r e a p p l i c a t i o n on an a p p l i c a t i o n s e r v e r ,
W h e r e i n t h e a p p l i c a t i o n s o f t W a r e c o m p r i s e s a s e q u e n c e
o f s t e p s ;a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f ch a n g e s m a d e
t o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a t h i r d memory source on s a i d a p p l i c a t i o n s e r v e r ,
o t h e r W i s e t h e a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d
? r s t p r e d e t e r m i n e d p a r a m e t e r i n a s e c o n d memory
s o u r c e of h e a p p l i c a t i o n s e r v e r ;
i n r e s p o n s e o f t h e r e c o m m e n d a t i o n , o v e r r i d i n g , b y t h e
d e v e l o p e r , t h e d e s i g n a t i o n o f s t o r a g e o f s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r from t h e t h i r d memory s o u r c e , t o
s t o r a g e i n t h e s e c o n d memory s o u r c e ;
When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d andr e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :
checking a ? r s t memory s o u r c e on s a i d a p p l i c a t i o n
s e r v e r f o r a v a l i d v a l u e a s s o c i a t e d With s a i d ? r s t p r e
d e t e r m i n e d p a r a m e t e r W i t h o u t t a k i n g s a i d s o f t W a r e
a p p l i c a t i o n o u t o f s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d ? r s t memory s o u r c e , o b t a i n i n g s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d ? r s t memory
s o u r c e , W h e r e i n s a i d v a l i d v a l u e i s deemed p r e s e n t
and v a l i d i n s a i d c a c h e i f s a i d ? r s t p r e d e t e r m i n e d
parameter s l o c a t e d i n ? r s t memory s o u r c e and f an
e x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d ? r s t memory s o u r c e , c h e c k i n g s a i d s e c o n d
memory source on a database server f o r s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r W i t ho u t t a k i n g s a i d s o f tW a r e a p p l i c a t i o n o u t o f s e r v i c e , W h e r e i n t h e a p p l i c a
t i o n s e r v e r and t h e second memory ource a r e d i f f e r
ent s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d s e c
ond memory s o u r c e , moving s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from t h e second memory s o u r c e i n t o s a i d
? r s t memor y s o u r c e on s a i d a p p l i c a t i o n s e r v e r ; and
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d s e c o n d memory s o u r c e , o b t a i n i n g s a i d ? r s t p r e
determined a r a m e t e r from s a i d t h i r d memory s o u r c e
on s a i d a p p l i c a t i o n s e r v e r , and moving s a i d ? r s t p r e
determined a r a m e t e r from s a i d t h i r d memory s o u r c e
i n t o s a i d ? r s t memory s o u r c e ; and
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d ; W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
6 . The method o f c l a i m 5 , W h e r e i n t h e e x p i r a t i o n t i m e
a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s d i f f e r e n tfrom h e e x p i r a t i o n t i m e a s s o c i a t e d W i t h a t l e a s t one o t h e r o f
s a i d p r e d e t e r m i n e d p a r a m e t e r s .
7 . A ethod c o m p r i s i n g :
e x e c u t i n g a s o f t W a r e a p p l i c a t i o n on an a p p l i c a t i o n s e r v e r ,
W h e r e i n t h e a p p l i c a t i o n s o f t W a r e c o m p r i s e s a s e q u e n c e
o f s t e p s ;
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 7/9
US 8 , 4 2 3 , 9 8 9 B2
7
a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f c ha n g e s m a d et o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a t h i r d memory source on s a i d a p p l i c a t i o n s e r v e r ,
o t h e r W i s e t h e a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d
? r s t p r e d e t e r m i n e d p a r a m e t e r i n a s e c o n d memory
s o u r c e of h e a p p l i c a t i o n s e r v e r ;
s t o r i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d t h i r dmemory o u r c e of a i d a p p l i c a t i o n s e r v e r based on s a i d
r e c o m m e n d a t i o n ;c r e a t i n g a n u p d a t e v a l u e f o r s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r o f s a i d s e t o f p r e d e t e r m i n e d p a r a m e t e r s ; s t o ri n g s a i d u p d a t e v a l u e f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m
e t e r i n s a i d second memory s o u r c e of t h e a p p l i c a t i o n
s e r v e r ;
When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d and
r e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :
checking a ? r s t memory s o u r c e on s a i d a p p l i c a t i o n
s e r v e r f o r a v a l i d v a l u e a s s o c i a t e d With s a i d ? r s t p r e
d e t e r m i n e d p a r a m e t e r W i t h o u t t a k i n g s a i d s o f t W a r e
a p p l i c a t i o n o u t o f s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d ? r s t memory s o u r c e , o b t a i n i n g s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d ? r s t memory
s o u r c e , W h e r e i n s a i d v a l i d v a l u e i s deemed p r e s e n t
and v a l i d i n s a i d c a c h e i f s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r i s l o c a t e d i n ? r s t memory s o u r c e and f an
e x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d ? r s t memory s o u r c e , c h e c k i n g s a i d s e c o n d
memory source on a database server f o r s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r W i t ho u t t a k i n g s a i d s o f tW a r e a p p l i c a t i o n o u t o f s e r v i c e , W h e r e i n t h e a p p l i c a
t i o n s e r v e r and h e second memory ource a r e d i f f e r
ent s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d s e c
ond memory s o u r c e , moving s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from t h e second memory s o u r c e i n t o s a i d
? r s t memor y s o u r c e on s a i d a p p l i c a t i o n s e r v e r ; and
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d s e c o n d memory s o u r c e , o b t a i n i n g s a i d ? r s t p r e
determined a r a m e t e r from s a i d t h i r d memory s o u r c e
on s a i d a p p l i c a t i o n s e r v e r , and moving s a i d ? r s t p r e
determined a r a m e t e r from s a i d t h i r d memory s o u r c e
i n t o s a i d ? r s t memory s o u r c e ; and
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d ; W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
8 . The method o f c l a i m 7 , f u r t h e r c o m p r i s i n g :
i d e n t i f y i n g one o r more a r a m e t e r s con?gured f o r s t o r a g e
on s a i d ? a t ? l e and s t o r e d on s a i d ? a t ? l e t h a t a r e being
u p d a t e d a t a f r e q u e n c y t h a t e x c e e d s a n e x p e c t e d u p d a t e
f r e q u e n c y l e v e l ; a n d r e l o c a t i n g s a i d i d e n t i ? e d p a r a m
e t e r s from a i d ? a t ? l e t o s a i d remote l e i n s a i d d a t a b a s e
server.
9 . A y s t e m c o m p r i s i n g a p r o c e s s o r e x e c u t i n g i n s t r u c t i o n s
t o p e r f o r m t h e f u n c t i o n s o f :
a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f c ha n g e s m a d et o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
20
25
30
35
40
45
50
55
60
6 5
8
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a ? a t ? l e on s a i d a p p l i c a t i o n s e r v e r , o t h e r W i s e t h e
a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d ? r s t p r e d e t e r
mined a r a m e t e r i n a d a t a b a s e o f t h e a p p l i c a t i o n s e r v e r ;
i n r e s p o n s e o f t h e r e c o m m e n d a t i o n , o v e r r i d i n g , b y t h e
d e v e l o p e r , t h e d e s i g n a t i o n o f s t o r a g e o f s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r f r o m t h e ? a t ? l e , t o s t o r a g e i n t h e
d a t a b a s e ;When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d and
r e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :checking a cache on s a i d a p p l i c a t i o n s e r v e r f o r a v a l i d
v a l u e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d param
e t e r W i t h o u t t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f
s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d c a c h e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r f r o m s a i d c a c h e , W h e r e i n s a i d v a l i d v a l u e i s
deemed p r e s e n t and v a l i d i n s a i d c a c h e i f s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r i s l o c a t e d i n c a c h e and f a ne x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d c a c h e , c h e c k i n g s a i d d a t a b a s e on a d a t a b a s e
s e r v e r f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r W i t h o u t
t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f s e r v i c e ,Wherein h e a p p l i c a t i o n s e r v e r and h e d a t a b a s e s e r v e r
are d i f f e r e n t s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d d a t a
b a s e , m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
t h e d a t a b a s e i n t o s a i d c a c h e on s a i d a p p l i c a t i o n
s e r v e r ; and
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d d a t a b a s e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from a i d ? a t ? l e on a i d a p p l i c a t i o n s e r v e r ,a n d m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
s a i d ? a t ? l e i n t o s a i d c a c h e ; and
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d ; W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
1 0 . The s y s t e m o f c l a i m 9 , W h e r e i n t h e e x p i r a t i o n t i m e
a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s d i f f e r e n tfrom h e e x p i r a t i o n t i m e a s s o c i a t e d W i t h a t l e a s t one o t h e r o f
s a i d p r e d e t e r m i n e d p a r a m e t e r s .
1 1 . A y s t e m c o m p r i s i n g a p r o c e s s o r e x e c u t i n g i n s t r u c
t i o n s t o p e r f o r m t h e f u n c t i o n s o f :
a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f ch a n g e s m a d et o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a ? a t ? l e on s a i d a p p l i c a t i o n s e r v e r , o t h e r W i s e t h e
a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d ? r s t p r e d e t e r
mined a r a m e t e r i n a d a t a b a s e o f t h e a p p l i c a t i o n s e r v e r ;
s t o r i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d ? a t ? l e o f
s a i d a p p l i c a t i o n s e r v e r based on s a i d recommendation;
c r e a t i n g a n u p d a t e v a l u e f o r s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r o f s a i d s e t o f p r e d e t e r m i n e d p a r a m e t e r s ; s t o r
i n g s a i d u p d a t e v a l u e f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m
e t e r i n s a i d d a t a b a s e o f t h e a p p l i c a t i o n s e r v e r ;
When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d and
r e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 8/9
US 8 , 4 2 3 , 9 8 9 B2
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :checking a cache on s a i d a p p l i c a t i o n s e r v e r f o r a v a l i d
v a l u e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d param
e t e r W i t h o u t t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f
s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d c a c h e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r f r o m s a i d c a c h e , W h e r e i n s a i d v a l i d v a l u e i s
deemed p r e s e n t and v a l i d i n s a i d c a c h e i f s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r i s l o c a t e d i n c a c h e and f a n
e x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d c a c h e , c h e c k i n g s a i d d a t a b a s e on a d a t a b a s e
s e r v e r f o r s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r W i t h o u t
t a k i n g s a i d s o f t W a r e a p p l i c a t i o n o u t o f s e r v i c e ,Wherein h e a p p l i c a t i o n s e r v e r and h e d a t a b a s e s e r v e r
are d i f f e r e n t s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d d a t a
b a s e , m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
t h e d a t a b a s e i n t o s a i d c a c h e on s a i d a p p l i c a t i o n
s e r v e r ; andi f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d d a t a b a s e , o b t a i n i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from a i d ? a t ? l e on a i d a p p l i c a t i o n s e r v e r ,
a n d m o v i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m
s a i d ? a t ? l e i n t o s a i d c a c h e ; and
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d ; W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
1 2 . The s y s t e m o f c l a i m 1 1 , f u r t h e r c o m p r i s i n g :
i d e n t i f y i n g one o r more a r a m e t e r s con?gured f o r s t o r a g e
on s a i d ? a t ? l e and s t o r e d on s a i d ? a t ? l e t h a t a r e being
u p d a t e d a t a f r e q u e n c y t h a t e x c e e d s a n e x p e c t e d u p d a t e
f r e q u e n c y l e v e l ; a n d r e l o c a t i n g s a i d i d e n t i ? e d p a r a m
e t e r s from a i d ? a t ? l e t o s a i d remote l e i n s a i d d a t a b a s eserver.
1 3 . A y s t e m c o m p r i s i n g a p r o c e s s o r e x e c u t i n g i n s t r u c
t i o n s t o p e r f o r m t h e f u n c t i o n s o f :
a u t o m a t i c a l l y m o n i t o r i n g t h e f r e q u e n c y o f c ha n g e s m a d e
t o a s e t o f p r e d e t e r m i n e d p a r a m e t e r s needed by h e s o f t
Ware a p p l i c a t i o n , Wherein i f a ? r s t p r e d e t e r m i n e d
20
25
p a r a m e t e r i s u p d a t e d a t a f r e q u e n c y l o W e r t h a n a p r e d e - 4 5
t e r m i n e d f r e q u e n c y t h r e s h o l d , t h e a p p l i c a t i o n s e r v e r
recommends o s t o r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i n a t h i r d memory source on s a i d a p p l i c a t i o n s e r v e r ,
o t h e r W i s e t h e a p p l i c a t i o n s e r v e r a d v i s e s t o s t o r e s a i d
1 0
? r s t p r e d e t e r m i n e d p a r a m e t e r i n a s e c o n d memory
s o u r c e of h e a p p l i c a t i o n s e r v e r ;
i n r e s p o n s e o f t h e r e c o m m e n d a t i o n , o v e r r i d i n g , b y t h e
d e v e l o p e r , t h e d e s i g n a t i o n o f s t o r a g e o f s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r from t h e t h i r d memory s o u r c e , t o
s t o r a g e i n t h e s e c o n d memory s o u r c e ;
When a s t e p i n t h e s e q u e n c e o f s t e p s i s e x e c u t e d andr e q u i r e s s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d s e t
o f p r e d e t e r m i n e d p a r a m e t e r s , o b t a i n i n g s a i d ? r s t p r e d e
t e r m i n e d p a r a m e t e r b y p e r f o r m i n g t h e o p e r a t i o n s o f :
checking a ? r s t memory s o u r c e on s a i d a p p l i c a t i o n
s e r v e r f o r a v a l i d v a l u e a s s o c i a t e d With s a i d ? r s t p r e
d e t e r m i n e d p a r a m e t e r W i t h o u t t a k i n g s a i d s o f t W a r e
a p p l i c a t i o n o u t o f s e r v i c e ;i f s a i d v a l i d v a l u e o f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
i s i n s a i d ? r s t memory s o u r c e , o b t a i n i n g s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d ? r s t memory
s o u r c e , W h e r e i n s a i d v a l i d v a l u e i s deemed p r e s e n t
and v a l i d i n s a i d c a c h e i f s a i d ? r s t p r e d e t e r m i n e d
parameter s l o c a t e d i n ? r s t memory s o u r c e and f an
e x p i r a t i o n t i m e a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r
mined a r a m e t e r h a s n o t l a p s e d ;i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s n o t c o n t a i n e d i n
s a i d ? r s t memory s o u r c e , c h e c k i n g s a i d s e c o n d
memory source on a database server f o r s a i d ? r s t
p r e d e t e r m i n e d p a r a m e t e r W i t h o u t t a k i n g s a i d s o f tW a r e a p p l i c a t i o n o u t o f s e r v i c e , W h e r e i n t h e a p p l i c a
t i o n s e r v e r and t h e second memory ource a r e d i f f e r
ent s e r v e r s ;
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r e x i s t s i n s a i d s e c
o n d memory s o u r c e , m o v i n g s a i d ? r s t p r e d e t e r m i n e d
p a r a m e t e r from t h e second memory s o u r c e i n t o s a i d
? r s t memor y s o u r c e on s a i d a p p l i c a t i o n s e r v e r ; and
i f s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r d o e s n o t e x i s t i n
s a i d s e c o n d memory s o u r c e , o b t a i n i n g s a i d ? r s t p r e
determined p a r a m e t e r from a s a i d t h i r d memory
s o u r c e on s a i d a p p l i c a t i o n s e r v e r , and moving s a i d
? r s t p r e d e t e r m i n e d p a r a m e t e r f r o m s a i d t h i r d memory
s o u r c e i n t o s a i d ? r s t memor y s o u r c e ; and
u s i n g s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i n s a i d s t e pr e g a r d l e s s o f W h e r e s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r
Was o b t a i n e d ; W h e r e i n u p d a t e d v a l u e s o f t h e p r e d e t e r
mined a r a m e t e r a r e u s e d i n l i e u o f t h e o r i g i n a l v a l u e s .
1 4 . The s y s t e m o f c l a i m 1 3 , W h e r e i n t h e e x p i r a t i o n t i m e
a s s o c i a t e d W i t h s a i d ? r s t p r e d e t e r m i n e d p a r a m e t e r i s d i f f e r e n tfrom h e e x p i r a t i o n t i m e a s s o c i a t e d W i t h a t l e a s t one o t h e r o f
s a i d p r e d e t e r m i n e d p a r a m e t e r s .
* * * * *
7/27/2019 Us 8423989
http://slidepdf.com/reader/full/us-8423989 9/9
UNITED S T A T E S PATENT AND TRADEMARK F F I C E
CERTIFICATE OF CORRECTION
P A T E N T NO. 2 8 , 4 2 3 , 9 8 9 B2 Page 1 Ofl
APPLICATION O . : 12/114153
DATED : A p r i l 1 6 , 2 0 1 3
INVENTOR S) : E r i c F o d o k , J a y C o l s o n a n d Don D e a s e y
I t i s c e r t i f i e d t h a t e r r o r appears i n t h e a b o v e - i d e n t i ? e d p a t e n t and t h a t s a i d L e t t e r s P a t e n t i s h e r e b y c o r r e c t e d a s shown b e l o w :
On h e T i t l e p a g e o f t h e p a t e n t , t o t h e r i g h t o f i d e n t i ? c a t i o n i t e m 7 3 ) t h e a s s i g n e e ) , t h e Word
“Synchonoss” should be changed t o - - Synchronoss - - .
S i g n e d a n d S e a l e d t h i s
T w e n t y - f o u r t h Day o f S e p t e m b e r , 2 0 1 3
Q Z T / E L )
T e r e s a S t a n e k Rea
D e p u t y D i r e c t o r a f t he U n i t e d S t a t e s P a t e n t and T r a d e m a r k O ? i c e