ααΎαααΆαααααα’αα·αααααααα
αα
αααα·ααααΆαααααααΆααααααΆαα αααααα½α α’αααααααααααααααααααΆααα·α
αα
αααααΎαααααΏαααααΆαααααΆααααΆααααααααααΎ Apache Ignite αα½αααΆαα½αααΉα MSSQL α αΎαααΆααααα αΆαααα ααααααα½ααααααΆαααΌαααΆαααα’αΆαα αα·αα§ααΆα αααααααΌα Java α αααα»αα
αΌαα
α·αααααα ααααααααααααΆαα
1. ααα ααααΈαααααααΆαααα’αααΈαααα αΆ
ααααΉαααΆααααααα αΆααΆαααΌα
ααΆααααααα ααΆααααααΈααΆααααααΈα
ααα»α
ααα SalesPoint αα·ααααααΈααα·ααα Sku (Stock Keeping Unit)α α
ααα»α
ααααΆααααααΆααα»ααααααα "ααααααα αΆα" ααΆαα½αααΉαααααα "ααΌα
" αα·α "αα" α ααΆαα
αΆααααααΆαα (αααααΈααα·αααααα
ααα»α
ααα) ααααΌαααΆαααααΆαααα
ααΉαα
ααα»α
αααααΈαα½αα (αααα»αααΈ DBMS) α αΎαααααααΆαααααΌαααΆααααααα±ααααΆα
αΆααααΈααΆαααα·α
αααααααααΆααααααΆααααα·ααααααααΆααααααΆααα
αα·αααΆαααααα
αΌαααΈααΆαα
αΆααααααΆαα α¬αααααααα
ααΆαα
αΆααααααΆααα
ααΆααααΌαααΆαααΆαααΆαααΎααααΈαααα αααααΆαααααααΆαααααααΆααααα ααααα ααα»α ααα αα·ααααααΆαα»αααααααΆαα’αααΈααα·ααααααααΆααααααΆαααααααΆαααααααααα½αααααΆαα»αα ααΆαααααααΆααΆαα½αααααααααααααα»ααααααααΌαα±ααααααΆαααααΆαααΈαααααα Ignite ααΎααααΈαααα»ααα·αααααα ααααΆααΆααααααΌααααα»αααααααααααααα (ααααααα αΆα αααααΌαααα·ααα αααα ααα_of_sales_points) α αΎααααα αΌαααΆαααα‘αααα DBMS αα·αα
2. ααΆααα·ααααΆα’αααααα·αααα
αααα»ααα·αααΆααααΆααααα·ααααααα ααΌα αααααααα»αα αΆααααααΎαααΆαααΈα ααααααΆαα αααααΊααΈααΆααα·αα·αααα‘αΎααα·αααααΆαααααα»αααααααΆαα
ααΆααααΆ 2016
αααααΆααααα»αα·αααα·αα·ααααΆ "α’αααααΉααααααα‘αΎαα αΎαααααααΆαααααΆα αΆαα!" αααα»ααααα»ααααααααααΆααααααα’αααααα·ααααΆα αααααΎαααΈααα’αΌ Apache Ignite Essentials α
ααα½αααΈα ααα»ααααααΆαα·αααΆααααααααααααααΆαααα·α
αα
ααΆαααΆααααΆαααααααααα»αααα αααα»αααΎαααααΎαααΆα Ignite αααααααααααΈαααααΆααααΆααααααααΆααΆαα½αααΉαα―αααΆααααααααΆα βexample-ignite.xmlβ ααααααααΎααααααα·ααΈααααΌα
αααα»αααΆαα’αΆααααααα α αΎααα ααΈαααα§ααΆα αααααααΆααααααΎ affinityKey (αααααΎααα»αααΆαααααααα½α SQL) α αΎααααααΆααααααΎ BinaryObject α’αΆααααααΆααα
IgniteCache<BinaryObject, BinaryObject> people
= ignite.cache("Person").withKeepBinary();
αααα»αβα’αΆαβααΆ
αααα»ααααα»ααααααΎααααααα·ααΈαα»αααααΌαααα‘αΎααα·α ααΎααααΈα²ααααααΉαααααΈαααααααα»αα αααααΉαααααΆααααααα ααα»α ααααααα»α MSSQL ααααΌαααΆααααααααΆ [id] [int] NOT NULL αααα»ααααααΎαααααΆαααααααΆαααααααΆαααααααααααΆ
IgniteCache<Integer, SalesPoint> salesPointCache=ignite.cache("spCache")
αα αααα»αααΆαααααα xml αααα»ααααα αΆαααΆααααΆαααααααΆααααααΌαααΆααααα αα
<bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="spCache"/>
<property name="cacheMode" value="PARTITIONED"/>
</bean>
ααΆααααα ααααΆαα ααα»α ααααΆααααααααααααΆααΆααααααΌααααα»ααααααααΌαααΆαααΉαααααΌαααΆααααααΎαα‘αΎααα ααΎααααΆααα αααααααΈαα½αααααααΆαααααααααααΆ salesPointCache αααααΆααα ααΈααα αααααΆααααΈαααααααΆααα’αα·αα·ααααΉαααααΎααΆαααΌαααα»αα α»ααααααα
αααα»ααααα»αα’αΆαααααα
@Override
public void run() {
SalesPoint sp=salesPointCache.get(spId);
sp.calculateSalesPointCount();
..
}
αααα»αααααααααΆααααααΌααααα»α αα·αααΆααααα αααααααα·ααααΆ α αΎαααααΎαααΆαααΆαα ααΎαααα»ααα·ααααααααΆαααααα α’αααΈααααααααΆαααααΎαααΆααααα»αααΌαααααΆααα ααΎαααΆαααΈαααα’αα·ααααααα
αααα»αααΎαααααΎαααΆααααΆαααΈαααααΆααααα CentOs ααΈα αααααΆααα’αΆααααααΆα IP αααα»α default-config.xml ααααα·ααααα·ααΎααΈαα½αα
./bin/ignite.sh config/default-config.xml
ααααΆαα Ignite ααΆααααΈααααα»αααααΎαααΆα α αΎαα’αΆα ααΎαααΎαααααΆαα αα·ααα ααα αααα»ααααααΆααα’αΆααααααΆααααααααΌαααΆααα αααα»α xml config αααααααα·ααΈα’αα·αα·αα ααΆα αΆααααααΎα ααααααααααΆααααΈααΈαα topology α αΎαααααΆαααααααΆαααααΆααααΈααααααααα αααααα ααα»αααα αΆα βClassNotFoundException: model.SalesPointβ αα αααα»ααααααΆαα
SalesPoint sp=salesPointCache.get(spId);
StackOverflow αα·ααΆαααΆα ααα»αααααααΆααααα α»αααΊααΆαα·αααΆαααααΆαα SalesPoint ααααΆαααααα½ααα ααΎαααΆαααΈααα CentOs ααα ααΎαβααΆαβααβαααα ααΎααααΎααΌα ααααα α’αααΈ "α’ααααα·αα αΆαααΆα αααααΎααΌα Java ααααα’αααααααααα ααΎααααΆααααΈαα½αα" α αΎαααΌα αααααα ααΎ? α¬ "ααΌα Java ααααα’ααα" αα·ααααα’αααΈ SalesPoint αα?
αααα»ααααα ααααΆααΉαα’αααΈαα½α - αααα»αα αΆααααααΎααααααααααααααα α’αΆα αα·αααααααααααααααα αα½αααααα»αααααααα αααα»αααΆαα’αΆααααααααΆαααα»αααΆαα’αΆαα’αααΈαααΆααα’ααααΎαααααΆαααααα ααααΆαα’αααΈααααΈαααααα ααααααααααααα»ααααα»αααααααααααα»αααΆαααααΎαααα·ααααααα½αα±ααα αΆααα’αΆαααααααα½αα ααα½αα
Model classes are not peer deployed, but you can use withKeepBinary() flag
on the cache and query BinaryObjects. This way you will avoid deserialization
on the server side and will not get ClassNotFoundException.
ααα·βααΆαβαα·αααα·βα’αααΆα
βαα½αβαααααβαααβ:
α’αααααα’αααΈ Habre
That's it. Start (..) node using MaintenanceServiceNodeStartup file or pass
maintenance-service-node-config.xml to Apache Ignite's ignite.sh/bat scripts.
If you prefer the latter then make sure to build a jar file that will contain
all the classes from java/app/common and java/services/maintenance directories.
The jar has to be added to the classpath of every node where the service
might be deployed.
ααΆααΆααα·α αααα αΎαααΆααΆα αα ααΈαααααΆααααα αα α ααα»α’αααΈααΆαααΆαααααααααααΈαααα’αΆααααααΆααααα!
3.SingleJar
Denis ααΆαααΆααα
αααΆααααααΆααααα XNUMX αααα»αααΆαααΆααααααααααΆαααααα½ααααααααα»α IMHO ααΆααααααααααααΆααααααααααααα»ααααααΆαααΆααα’ααα αα
αααα»αααααααΆααα
αααα»αααααΎααΆααΆαααααααΌα ααααΆ α αΎαααα½αααΆαα―αααΆα jar αααα½ααααααΎαααααΎαααΆα "ααααΆαααα·αααααα" α¬ "ααααΆααα’αα·αα·αα" α’αΆαααααααΎα’αΆαα»ααααααααααΆααααΆααααααααΆα ααΆααα½αααααα»αααααΆα αΆααααααΎααα·αααααΎαααΆαα ααΆαααΆαααααααΆαααΌαααααααΌαααΆααααΆαααα
ααΆαααααΆααααααΌαααΈααααΆαααααα·ααααααααΆααααααα ααΆαααα·αααΈα αααΆαααααα·ααααααααααα»αααααΆααααα αΆαααΆαααααααααααΈαααΆααααααΆααα ααα»αααα½αα ααΆα αΆαααΆα ααααα»αααΆααααααΎαααααα·αααααΆαααΆαααααΎααααΆααα’αααα αα αΆααα ααΎααααΆαα α αΎααααααΊααΆααααααααα BinaryObject αααααα ααΆααΆαααααααααααααΆααααΆααα
4 - ααα ααααΈβααααα·ααααΆα
ααΆααα·ααααααααΌααααααΆααα½ααααααα’αααΈααΆααα·αα αααΆααααΆααααα―αααΆααααααα Apache Ignite αααααα ααΆααΆαααΆααα»αααα·ααα ααΆαααΆαααααΆααααααΌααα·α αα½α α αΆααααΆααααΈααααΆα 2016 α ααΆαα·αααΆααααα½ααααααααΆααα’αααα αΆααααααΎαααααΌααααα»αααΆααααααΌααααα»αααααΌαα»αααΆααααααα’ααααΎααα ααααα αα·α/α¬ααααΆααα
αααααα’ααααΎααααααααααΆαααΆααααααΆαααααΎ ααΆαα
αΆααα’αΆααααααααΊααΆ Zero Deployment ααααΎαααΆα ααα»ααααααΆααααα
ααααα·αααααααααααα»αααααα α’αααΈαα½αααΌα
αααα BinaryObject ααααΌαααΆαααααΎααΎααααΈααααααααααΆααα
αααααααΈα
ααααΆαααΎααααΈααααΎααΆαααΆαα½αααααΆααααααΆαααααα½αα ααΆαααΆαααααααΆαααΌααα - ααααααΆααααααααα»α
Apache Ignite αααα½αααΆ α αΎαα
ααα
αΆαααααα»ααααααααααΌααΆααα
αααααα
αααα»ααααααΉαααΆαααα·ααααααααααααα»αααΉαααΆαααααααααα ααααα’αααααααΎααααΆαα Apache Ignite ααααΈα
ααααα: www.habr.com