Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!pt.cs.cmu.edu!rochester!fulk From: fulk@cs.rochester.edu (Mark Fulk) Newsgroups: comp.sys.mac Subject: Re: America Online Message-ID: <1989Dec13.163928.23588@cs.rochester.edu> Date: 13 Dec 89 16:39:28 GMT References: <1989Dec9.170635.22759@cs.rochester.edu> <24891@cup.portal.com> <1989Dec11.165834.7605@cs.rochester.edu> <24941@cup.portal.com> Reply-To: fulk@cs.rochester.edu (Mark Fulk) Organization: University of Rochester Computer Science Department Lines: 55 >"So what solution suggests itself? Storing the menus on the user's Mac is >clearly needed." Unfortunately, this would do away with one of AO's main >features: the ability to dynamically change the way screens look. AO can >these days, though). Enjoy, -Russ Once again, you didn't read the whole posting. Caching means storing the most recent version on disk, AS RETRIEVED FROM AMERICA ONLINE. This does not mean permanently storing menus. The cache must be kept up-to-date; the current buzzword for this notion is "coherent memory". The algorithm is simplicity itself: WHEN the user calls up item-name DO IF an item with name item-name is in a file THEN SEND <"IS" item-name "DATED" item-date "CURRENT?"> to america-online; GET ao-message FROM america-online; IF ao-message = <"UPDATE" item-name "DATE" new-date "INFO" update-info> THEN apply update info to the file of the item; set date of the file of the item to new-date; ELSE (*message is "ITEM" item-name "UP-TO-DATE"*) DO NOTHING; END IF ELSE (*no version on disk*) SEND <"SENDME" item-name> to america-online; GET item FROM america-online; WRITE item in a file; END IF DISPLAY item from its file; END WHEN Floppy-only systems only send SENDME messages, and never store items on the disk. The choice is a preference item. There is a second version of the algorithm which would work better if turnaround to the AO computers is poor: When the user signs on, send the creation dates of all the menus and most-used on-line files. When a menu or file gets updated, broadcast the news to the machines of all those people who are logged on. When a user requests a menu or frequently-used file, his computer would know whether or not it is up-to-date, and wouldn't have to have a conversation with AO to establish the case. In other cases, the previous algorithm is used. This would lengthen the sign-on process by several seconds, but, since it is long anyway, that won't matter much. Mark