Kayıtlar

ENTRYPOINT and CMD confusion in a nutshell

ENTRYPOINT and CMD confusion in a nutshell exec form (json form) and shell form in brief exec: [run.sh] => run.sh (command must be in $path ) shell: run.sh => /bin/sh -c run.sh ENTRYPOINT exec form [run.sh] execute whatever written, subsequent keywords become params to this executable => run.sh ENTRYPOINT shell from run.sh execute the script with prefixing with /bin/sh -c. so it becomes => /bin/sh -c run.sh CMD  if there is an ENTRYPOINT defined then this CMD become parameter only. unless ENTRYPOINT defined as shell from which makes CMD ignored. no ENTRYPOINT + CMD [run.sh hello] => /bin/sh -c run.sh hello ENTRYPOINT shell form run.sh hello + CMD exec/shell from => /run.sh (be careful the this command is in the path location ) (notice that CMD is ignoed in this case) ENTRYPOINT exec form [run.sh, hello] + CMD exec form [run.sh ,hello2] => run.sh hello run.sh hello2 (notice that second run.sh is a param only) ENTRYPOIN...
En son yayınlar

thread pool management in functional reactive programming, particularly in RxJava2

functional reactive programming, particularly rxjava2 in this post, is really fun when get accustomed to but getting familiar and thinking in reactive way is a little hard as first days. anyway, after several days of reading then I have implemented this style in one of my commercial projects. this paradigm save us lots of hardware resource also happy customers who apply our interface which observe the events triggered by this apply by customer. honestly speaking, due to well designed implementations, we have not faced any threshold issue but to be ready those issues beforehand, I started curious about thread pools and management. observeon and subscribeon are two ways to manage these thread pool either self constructed by Schedulers.from() or one of prebuild Schedulers in the framework. real reason I want to deeply analyse this is, names of those two operations are misleading at first interaction. not sure they will come true for me when I work more with Rx frameworks. I th...

NodePort with istio to entry point for service mash

most emerging tech subjects nowadays are cloud technologies. one of them in containerization area is obviously Kubernetes, I love kubernetes. if you are not using this thing in prod yet even test still very interesting to work in spare times. its really fun. like a world inside a one operation system which is inside a vm that running my local computer. even windows, since my current project requires windows, even window, yes windows :) suppose that you are a developer and writing small capital projects to your friends or runinng POCs. depend on the approach you would need many vms or many containers inside a container orchestrator lets say kubernetes :) for those seperate projects. my choice would be containers definitely. but then I need to remember many port for many entry points. how about making one port you edge point to your service mesh and implement your applications as microservices and deploy them in this mesh and only change the context path. ones you set up a system lik...

which javax.xml.parsers.SAXParserFactory Implementation will be loaded

if you are developing a JEE applications, if haven't yet, one day you might face exceptions due to loading wrong SAX implementation. and if you are producing an ear then it makes more difficult to understand reasons behing. think that you are using jdk 1.6 and want to use SAX in your application. it is very easy, since jdk1.6 contains sax implementation without anything you can. if you decided to use apaches xerces imp. , then you must put related jar to your ears classpath. but how these additional classes being picked up, despite exact same classes are in jdk's classpath. basic rule in java whist loading a class is, if you have a parent classloader then delegate this loading action to parent classloader. if it can not find then try to load class by own. factory finder in SAX Specification looks system parameter, then JAVA_HOME/lib/jaxp.properties, then META-INF/services/javax.xml.parsers.SAXParserFactory respectively. in such case like using an application server li...

very important db system views

Managing distributed transactions within the Oracle database The Oracle database allows access to the following information on distributed transactions within the database: • Information on unresolved distributed transactions (e.g. prepared and awaiting commit/rollback) is available via the DBA_PENDING_TRANSACTIONS system view. • Information on distributed transactions awaiting recovery (e.g. “in-doubt” transactions) is available via the DBA_2PC_PENDING system view. • Information on the currently active distributed transactions is available via the V$GLOBAL_TRANSACTION system view. •Information on incoming and outgoing connections for pending transactions within an Oracle distributed transaction is available via the DBA_2PC_NEIGHBORS system view.

soa suite 11g db size per individual composite

I have a customer who is struggling with db issues for several months, we have 550 million composite instances which are waiting to be purged. these instances takes nearly 12TB tablespace. so we are making investigations on this database. I realized that if i wrote a script which finds the ratio related the holding space behind the individual composites which are part of customer's order management process, it would worth the time I will spend. first I wrote a function which takes only composite instance id then one small select is enough to see which composite instance is taking the most size of db. this result is related with all spaces which can the different from instance to instance. the result would be like that default/ProcessSalesOrderEBF!13.10.25-0954*soa_1c1526b7-19c6-4633-bca4-bc06f1f157ad 43.8553333333 default/InterfaceOrderToProvisionEBF!13.10.24-1057*soa_91f81f2c-9d9c-4ef6-aa8e-1403138e3e34 12.6453333333 default/ProcessOrderToOLOProvABCS!13.12.03-1410*soa_...

java.lang.ClassNotFoundException: org.apache.xmlbeans.SchemaTypeLoader

if you faced trouble whilst exporting configuration from eclipse workspace with ant and striving to find a fix to it. here it is. only put the on the ant script. the exception stack trace is Caused by: org.osgi.framework.BundleException: Exception in com.bea.alsb.core.AlsbCore.start() of bundle com.bea.alsb.core. at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440) at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107) ... 28 more Cau...

calling back the process which is waiting internal callback from soa-infra

last week I have faced a problem on one of my asynchronous process which got an exception in the middle. and wanted to move forward it. the only one way to achieve it with calling the caller of this process. meaning returning with callback to the caller like this process is making it. at first the difficult part was finding the callback url which is being sent by soa infra as a ws-adressing tag in soap header. supposing you have a process which's url is in that process you have a partner link was defined in composite.xml with a wire definition like below : with this definition, your callback url becomes like but if you wanted to call your method via soapUI, you would get an exception about something but if you call via java or the page provided with mantioned url, you will be able to take forward your process. one other concern is the correlation. it is also a very easy problem. you have to send the information via soap header which is shown below. the fields which ha...