1. An epoxy resin represented by:
wherein A and A\u2032 are each independently selected from the group consisting of O or S;
wherein R5, R6, R11, and R12 are each independently selected from hydrogen or a C1-C6 straight chain or branched alkyl or alkenyl group, wherein the alkyl or alkenyl group is optionally substituted with one or more substituents, each of which is independently selected from NH2, OH, CF3, CN, CO2H, C(O)H or halogen, provided that at least one of R5, R6, R11, and R12 is not hydrogen; wherein adjacent R groups may optionally form a fused ring selected from a C5-C7 membered aromatic ring, or a C3-C8 cycloalkyl or heterocycle;
wherein R is derived from an aliphatic or cycloaliphatic molecule comprising at least two functional groups;
X is 1 or greater;
Y is 0 or greater; and
wherein the epoxy resin has a weight average molecular weight of less than about 100,000 Daltons and wherein the epoxy resin has a reduced potential to release endocrine disrupting compounds compared to bisphenol A and related phenolic compounds.
2. The epoxy resin of claim 1, represented by:
3. The epoxy resin of claim 1, wherein R is derived from a diglycidyl ether of a diol selected from the group consisting of:
2,2,4,4-tetramethyl-1,3-cyclobutanediol;
3,3,4,4,5,5-hexamethyl-1,2-cyclopentanediol;
2,2,4,4,5,5-hexamethyl-1,3-cyclopentanediol;
3,3,4,4,5,5,6,6-octamethyl-1,2-cyclohexanediol;
2,2,4,4,5,5,6,6-octamethyl-1,3-cyclohexanediol;
2,2,3,3,5,5,6,6-octamethyl-1,4-cyclohexanediol;
3,3,4,4,5,5,6,6,7,7-decamethyl-1,2-cycloheptanediol;
2,2,4,4,5,5,6,6,7,7-decamethyl-1,3-cycloheptanediol;
2,2,3,3,5,5,6,6,7,7-decamethyl-1,4-cycloheptanediol;
3,3,4,4,5,5,6,6,7,7,8,8-dodecamethyl-1,2-cyclooctanediol;
2,2,4,4,5,5,6,6,7,7,8,8-dodecamethyl-1,3-cyclooctanediol;
2,2,3,3,5,5,6,6,7,7,8,8-dodecamethyl-1,4-cyclooctanediol;
2,2,3,3,4,4,6,6,7,7,8,8-dodecamethyl-1,5-cyclooctanediol;
4,4-dimethyl-1-cyclobutanone-2,3-diol;
1,2-cyclobutanedione-3,4-diol;
4,4-dimethyl-2-cyclobutanone-1,3-diol;
1,3-cyclobutanedione-2,4-diol;
cyclohexanedimethanol; and
diol derivatives of norbornane, norbornene, bicycle2.2.2octane, cubane and adamantine.
4. A cured epoxy resin composition comprising the reaction product of epoxy resin of claim 1 and a curative compound, wherein the cured epoxy resin has a reduced potential to release endocrine disrupting compounds compared to cured epoxy resins comprising bisphenol A and related phenolic compounds.
5. The composition of claim 4, wherein the curative compound is a formaldehyde hardener, a polyamine hardener or a polythiol hardener.
6. The epoxy resin of claim 1, wherein A and A\u2032 are both O; and R5, R6, R11, and R12 are each independently selected from hydrogen or a C1-C6 straight chain or branched alkyl and preferably methyl or ethyl groups.
7. The epoxy resin of claim 6, wherein R5, R6, R11, and R12 are each independently selected from methyl or ethyl groups.
8. The epoxy resin of claim 1, wherein the epoxy resin has a viscosity of less than about 100 poise at 25\xb0 C. measured as a 40% weight solution of resin solids in methyl ethyl ketone or equivalent solvent.
9. The cured epoxy resin of claim 4, wherein the cured epoxy resin has a Tg value of about 30\xb0 C. to about 100\xb0 C.
10. The cured epoxy resin of claim 4, wherein the cured epoxy resin has a crack length of less than about 100 mm as determined by the Impact Wedge Band Test.
11. The epoxy resin of claim 1, wherein the epoxy resin has a weight average molecular weight of less than about 75,000 Daltons.
12. The epoxy resin of claim 3, wherein the epoxy resin has the following structure:
and wherein R is derived from
13. The epoxy resin of claim 2, wherein the epoxy resin is a chain extended epoxy resin prepared by:
(a) reacting a first substituted 1,3-cyclobutanediol molecule with epichlorohydrin in the presence of a first catalyst to form a diglycidyl ether, and
(b) reacting the diglycidyl ether with a second substituted 1,3-cyclobutanediol molecule in the presence of a second catalyst to form the chain extended epoxy resin.
14. The epoxy resin of claim 13, wherein the first substituted 1,3-cyclobutanediol diglycidyl ether is 2,2,4,4-tetramethyl-1,3-cyclobutanediol diglycidyl ether, the second substituted 1,3-cyclobutanediol molecule is 2,2,4,4-tetramethyl-1,3-cyclobutanediol, and the catalyst is tetrabutyl ammonium hydrogen bisulfate.
15. The epoxy resin of claim 1 having a weight average molecular weight of less than about 50,000 Daltons.
16. A container comprising a food-contact surface, wherein at least a portion of the food-contact surface is coated with a composition comprising an epoxy resin of claim 1 and a curative compound, wherein the container is a food or beverage can comprising metal.
17. A method of preparing a container comprising a substrate having a food-contact surface, the method comprising:
(a) providing a coating composition comprising an epoxy resin of claim 1;
(b) applying the coating composition to at least a portion of the food-contact surface of the substrate; and
(c) forming a container from the substrate, wherein the applying step is performed prior to or after the forming step.
18. A method of preparing a chain extended epoxy resin comprising:
(a) reacting a first cycloaliphatic molecule with epichlorohydrin in the presence of a first catalyst to form a diglycidyl ether, and
(b) reacting the diglycidyl ether with a second cycloaliphatic molecule in the presence of a second catalyst to form the chain extended epoxy resin.
19. The method of claim 18, wherein the first and second cycloaliphatic molecules are 2,2,4,4-tetramethyl-1,3-cyclobutanediol.
20. The method of claim 18, wherein the catalyst is selected from the group consisting of quaternary ammonium and quaternary phosphonium salts.
21. The method of claim 18, wherein the first cycloaliphatic molecule is 2,2,4,4-tetramethyl-1,3-cyclobutanediol diglycidyl ether, the second cycloaliphatic molecule is 2,2,4,4-tetramethyl-1,3-cyclobutanediol or cyclohexanedimethanol, and the catalyst is tetrabutyl ammonium hydrogen bisulfate.
22. An epoxy resin represented by:
wherein A and A\u2032 are each independently selected from the group consisting of O or S;
wherein R5, R6, R11, and R12 are each independently selected from hydrogen or a C1-C6 straight chain or branched alkyl or alkenyl group, wherein the alkyl or alkenyl group is optionally substituted with one or more substituents, each of which is independently selected from NH2, OH, CF3, CN, CO2H, C(O)H or halogen, provided that at least one of R5, R6, R11, and R12 is not hydrogen;
X is 1 or greater;
Y is 1 or greater; and
wherein the epoxy resin has a weight average molecular weight of less than about 100,000 Daltons and wherein the epoxy resin has a reduced potential to release endocrine disrupting compounds compared to bisphenol A and related phenolic compounds.
23. The epoxy resin of claim 1, wherein A and A\u2032 are both O; and R5, R6, R11, and R12 are each a methyl group.
24. The epoxy resin of claim 1, wherein the epoxy resin is a chain extended epoxy resin prepared by:
(c) reacting a first substituted 1,3-cyclobutanediol molecule with epichlorohydrin in the presence of a first catalyst to form a diglycidyl ether, and
(d) reacting the diglycidyl ether with a second aliphatic or cycloaliphatic molecule in the presence of a second catalyst to form the chain extended epoxy resin.
25. The epoxy resin of claim 24, wherein the catalyst is tetrabutyl ammonium hydrogen bisulfate.
The claims below are in addition to those above.
All refrences to claims which appear below refer to the numbering after this setence.
1. A method to cache content objects in a content delivery network (CDN) according to an arrangement of using different parent caches for different URIs, the method comprising:
receiving a first universal resource indicator (URI) at a cache of an edge server in a first points of presence (POP), wherein the first URI specifies a first content object;
determining that the cache does not hold the first content object;
analyzing the first URI to determine a first hierarchical tree of caches, the first hierarchical tree of caches having a plurality of levels of caches to successively receive content-object requests upon cache misses at previous levels, the first hierarchical tree of caches comprising the first parent cache;
requesting the first content object from the first parent cache in a second POP;
receiving a second URI at the cache of the edge server in the first POP, wherein the second URI specifies a second content object;
determining that the cache does not hold the second content object;
analyzing the second URI to determine a second hierarchical tree of caches, the second hierarchical tree of caches having a plurality of levels of caches to successively receive content-object requests upon cache misses at previous levels, the second hierarchical tree of caches comprising the second parent cache different from the first parent cache, wherein the second parent cache is in a third POP; and
requesting the content object from the second parent cache.
2. The method to cache content objects in the CDN according to the arrangement of using different parent caches for different URIs as recited in claim 1, wherein the first URI is from a first request for the first content object, further comprising:
analyzing the first request to determine if the cache has received the first request from a loop,
determining a third parent cache different from the first parent cache, and
requesting the first content object from the third parent cache should the loop be determined.
3. The method to cache content objects in the CDN according to the arrangement of using different parent caches for different URIs as recited in claim 1, further comprising:
analyzing the first URI; and
choosing the first hierarchy from a plurality of hierarchies based upon the analysis of the first URI.
4. The method to cache content objects in the CDN according to the arrangement of using different parent caches for different URIs as recited in claim 1, further comprising:
determining that the first parent cache does not hold the first content object;
determining a first grandparent cache from the URI, the first grandparent cache being in the first hierarchical tree of caches; and
requesting the first content object from the first grandparent cache.
5. The method to cache content objects in the CDN according to the arrangement of using different parent caches for different URIs as recited in claim 4, further comprising:
determining that the second parent cache does not hold the second content object;
determining a second grandparent cache from the URI, the second grandparent cache being in the second hierarchical tree of caches; and
requesting the second content object from the second grandparent cache.
6. A non-transitory machine-readable medium having machine-executable instructions configured to perform the machine-implementable method to cache content objects in the CDN according to the arrangement of using different parent caches for different URIs of claim 1.
7. A machine adapted to perform the machine-implementable method to cache content objects in the CDN according to the arrangement of using different parent caches for different URIs of claim 1.
8. A CDN for caching content objects according to a selectable arrangement of separate caches, the CDN comprising:
a plurality of POPs;
a plurality of edge servers distributed among the plurality of POPs, wherein the plurality of edge servers comprise a plurality of caches; and
a cache parent determining function that receives a plurality of URIs specifying a plurality of content objects for delivery to end user computers, wherein:
the plurality of URIs include information that allows selecting from a plurality of hierarchical trees of caches, each hierarchical tree having a plurality of levels of caches to successively receive content object requests upon a cache miss at a previous level, and
different URIs have different cache hierarchies parent caches.
9. The CDN for caching content objects according to the selectable arrangement of separate caches as recited in claim 8, wherein a parent cache is identified based on a hierarchical tree of the plurality of hierarchical trees, the parent cache being one level above a cache most recently assigned the content object.
10. The CDN for caching content objects according to the selectable arrangement of separate caches as recited in claim 8, wherein the plurality of POPs are located in a plurality of different geographic locations.
11. The CDN for caching content objects according to the selectable arrangement of separate caches as recited in claim 8, wherein:
the plurality of URIs include a first URI and a second URI;
both the first URI and second URI are received at a same POP, but correspond to different content objects;
the first URI has a first hierarchical tree of caches in multiple POPs;
the second URI has a second hierarchical trees of caches in multiple POPs; and
the first hierarchical tree is different from the second hierarchical tree.
12. The CDN for caching content objects according to the selectable arrangement of separate caches as recited in claim 8, wherein the URI is a portion of a URI.
13. The CDN for caching content objects according to the selectable arrangement of separate caches as recited in claim 8, wherein content objects can each be specified as sticky or ephemeral in the plurality of caches to optionally host or cache content objects.
14. A method for caching content objects according to a selectable arrangement of separate caches of a CDN, the method comprising:
receiving a first URI at a cache of an edge server, wherein the first URI specifies a first content object;
determining that the cache does not hold the first content object;
analyzing the first URI to determine a first hierarchical tree of caches, the first hierarchical tree of caches having a plurality of levels of caches to successively receive content-object requests upon cache misses at previous levels, the first hierarchical tree of caches comprising the first parent cache;
requesting the first content object from the first parent cache;
receiving a second URI at the cache of the edge server, wherein the second URI specifies a second content object;
determining that the cache does not hold the second content object;
analyzing the second URI to determine a second hierarchical tree of caches, the second hierarchical tree of caches having a plurality of levels of caches to successively receive content-object requests upon cache misses at previous levels, the second hierarchical tree of caches comprising the second parent cache different from the first parent cache; and
requesting the content object from the second parent cache.
15. The method for caching content objects according to the selectable arrangement of separate caches as recited in claim 14, wherein the first URI is from a first request for the first content object, further comprising:
analyzing the first request to determine if the cache has received the first request from a loop,
determining a third parent cache different from the first parent cache, and
requesting the first content object from the third parent cache should the loop be determined.
16. The method for caching content objects according to the selectable arrangement of separate caches as recited in claim 14, further comprising:
analyzing the first URI; and
choosing the first hierarchical tree of caches from a plurality of hierarchical trees of caches based upon the analysis of the first URI.
17. The method for caching content objects according to the selectable arrangement of separate caches as recited in claim 14, further comprising:
determining that the first parent cache does not hold the first content object;
determining a first grandparent cache from the URI, the first grandparent cache being in the first hierarchical tree of caches; and
requesting the first content object from the first grandparent cache.
18. The method for caching content objects according to the selectable arrangement of separate caches as recited in claim 17, further comprising:
determining that the second parent cache does not hold the second content object;
determining a second grandparent cache from the URI, the second grandparent cache being in the second hierarchical tree of caches; and
requesting the second content object from the second grandparent cache.
19. A non-transitory machine-readable medium having machine-executable instructions configured to perform the machine-implementable method for caching content objects according to the selectable arrangement of separate caches of claim 14.
20. A machine adapted to perform the machine-implementable method for caching content objects according to the selectable arrangement of separate caches of claim 14.