Rod Johnson의 J2EE Development without EJB를 연말선물로~~!

3장에서는 아키텍처부분을 집중적으로 살펴본다.
J2EE아키텍처를 이루고 있는 부부은 크게 3가지로 나눠진다. 잘 알고 있는 3-tier구조의 아키텍처이다.

저자가 주목하고 있는 부분은 Business Service Layer이다. 좋은 아키텍처는 잘 만들어진 Business Service Layer를 가지고 있어야 한다. 비즈니스 로직을 사용자, Web-UI, 리모트 클라이언트에게 제공하는 관문이 되기 때문이다.

좋은 Business Service Layer가 가져야 할 조건은 매우 많다. 기본적으로 J2EE아키텍처의 핵심가치들을 모두 충족해야 함은 물론이고 그 외에도 Presentation layer에 독립적이어야 하고, 트랜잭션 관리가 가능해야 하며, 개발생산성이 높아야 하고, 그 뒤에 있는 Data access layer가 감춰져 있어야 하며, 필요에 따라서 scale out이 가능해야 하고, 테스트성이 좋아야 한다.

대표적인 business service layer들에는 Session EJB, .NET Serviced Component, MVC Web Actions, Service Layer in Lightweight Container등이있다. 결국 이 책에서 얘기하고자 하는 – 지지하고자 하는 – 것은 마지막 service layer running in lightweight container라고 볼 수 있다.

왜 lightweight container의 service layer를 가진 아키텍처가 좋은 가에 대해서 크게 4가지의 대표적인 J2EE Architecture들을 비교해가면서 그 장단점을 설명하고 있다.

첫째는 Class J2EE architecture using remote EJBs. 뭐 더 말할 것도 없이 대부분의 경우에 최악의 아키텍처 되겠다. 그 최악의 복잡함은 수많은 단점을 파생시킨다. 거의 없겠지만 꼭 필요한 케이스가 아니라면 절대 선택하지 말아야 할 아키텍처이다.

둘째는 Local EJB Architecture이다. Remote EJB가 가지는 단점을 많이 축소시켜준 EJB의 타협판인데 – 처음 Local EJB가 나왔을 때 이게 머야 장난치나 하는 생각이 들었다 – 현실적인 요구 또는 불만이 약간 반영된 것으로 보면 될 것 같다. Remote EJB의 단점을 일부 극복했지만 반대로 Remote EJB의 일부 장점들을 잃어버렸고 또 여전히 EJB의 단점들을 그대로 안고 있는 아키텍처이다. EJB의 기본장점을 많이 포기하고 이렇게 땜빵식의 Local EJB를 쓴다면 왜 구지 EJB를 써야하는가가 의문으로 제기될 것이다.

셋째는 Ad hoc J2EE Architecture without EJB이다. 많은 J2EE프로젝들은 EJB없이 잘 개발되어 사용되어지고 있다. 이런 경우 그 아키텍처 구조는 해당 프로젝트의 아키텍트에 따라 다르게 설정되고 그런 면에서 “Ad hoc”이라 할 수 있다. 전형적으로 MVC구조의 web-tier를 가지며 POJO기반의 business logic을 이용한다. 종종 web-tier와 business-logic tier가 혼재하며 자체적으로 만든 singleton이나 factory를 사용한다. 트랜잭션은 JTA등을 이용해서 프로그램적으로 구현한다. Data쪽은 O/R툴이나 JDBC를 수용한다.

EJB가 가진 많은 단점을 극복할 수 있는 좋은 아키텍처이다. EJB의 복잡한 구조와 작업들을 피할 수 있고 어느정도 빠른 생산성이 보장된다. 하지만 EJB가 가지는 장점들 – remoting, business object관리의 표준, business service layer의 존재, declarative transaction management – 을 포기해야 한다. 제일 문제는 비즈니스 오브젝트들을 다루는 표준방법이 부재하다는 것이다. 또한 테스트성 면에서 EJB에 비해서 그다지 차이점이 없다.

뛰어난 아키텍트가 참여했다면 같은 조건의 EJB프로젝에 비해서 이 방법이 훨씬 나은 결과를 가져올 것이다.

넷째는 바로 이 책이 주장하는 “Lightweight Container”기반의 Architecture이다.

세번째 아키텍처와는 달리 lightweight container architecture는 business service layer면에서 EJB와 닮은 점이 많다. EJB가 가지는 단점을 피하면서 EJB의 장점은 살리는 것이 바로 lightweight container가 가지는 목적이랄까? Lightweight container는 J2EE기반이 아니다. J2EE에서 독립적이다. 또 어느 특정 UI(Web-UI)나 Data access기술에도 독립적이다.

Lightweight container의 주요 관심사는 사용하기 복잡하지 않고 특정기술에 종속적이지 않으면서 – 심지어는 자기 자신에게도 – 다양한 business service layer의 장점들을 수용하는 것이다. 대표적으로 Spring Framework과 PicoContainer가 있다. 엔터프라이즈 서비스의 주요특징중의 하나인 트랙잭션관리라는 면에서 AOP를 이용한 방법을 사용하고 있는데 이 점에선 SpringFramework이 가장 우수하고 통합적인 기능을 제공한다.

단점도 물론 있다. 우선 Local EJB와 마찬가지로 remoting facade를 사용하지 않고 직접적으로 remoting을 사용할 수 없다. 하지만 과연 remoting이 얼마나 필요한지 따져보면 큰 단점이라고 할 수 없다. 두번째는 아직 lightweight container의 standard가 없다는 점이다. 하지만 조만간 Spring이 de facto standard가 되지 않을까 기대해본다. 세번째는 아직 이런 아키텍처에 익숙한 개발자나 아키텍트들이 적다는 것인데 시간이 해결해 줄 문제이다.

다음은 Architectures In Practice라는 주제로 SUN의 Java PetStore로부터 시작해서 각 벤더와 단체에서 내놓은 각종 blueprints나 아키텍처 샘플들을 분석해나가는데… 다들 이런 저런 단점들을 – 또는 수준 낮은 코드도 보인다! – 가지고 있다. 지속적으로 지적된 내용들이다.

마지막으로 Application Server가 필요한 것인가의 문제제기인데. 사실 고가의 복잡한 application server는 꼭 필요한 경우가 아니라면 구지 선택할 이유가 없다는 것이 맞다. 분산트랜잭션을 쓴다거나 리모팅을 반드시 사용해야 할 경우라면 EJB와 WAS를 사용하는 것이 필요할 것이다.

결론적으로 뛰어난 Business Service Layer를 제공하는 것 – EJB와는 비교가 안되는 – 이 책이 제시하고자 하는 Spring Framework이 만들어진 목적이라고 할 수 있을 것이다.

계속해서 이런 주제들을 좀더 세세한 범위에서 깊이 파고 들어가서 분석하고 그 대안으로 사용될 Lightweight Container에 대해서 살펴볼 것이다.

이 책을 읽으면서 그토록 최첨단기술임을 자랑하는 J2EE분야에 (다른 기술쪽도 마찬가지겠지만) 얼마나 많은 미신들이 존재하는지 놀라게 된다. 자기 손으로 확인한번 해보지 않은 기술을 맹신하는 태도는 IT엔지니어로서 일단 실망스러운 것이다. 또는 그렇게 잘못된 믿음으로 사람들을 이끄는 업체나 개발자 스스로 조심해야 할 것이다. 나도 조금 찔리는 부분이다.

Related posts:

  1. J2EE Development without EJB (5) – EJB, Five Years On
  2. J2EE Development without EJB (6) – Lightweight Container & IoC
  3. J2EE Development without EJB (2) – Goal
  4. J2EE Development without EJB (4) – The Simplicity Dividened
  5. J2EE Development without EJB (1) – Why "J2EE Without EJB"?
  6. J2EE Development without EJB 정리는 이만
  7. SpringFramework vs. J2EE?
  8. 망해가는 EJB 최후의 발악인가? Mastering EJB3 (4th Ed)
  9. 하이버네이트와 스프링의 갈등
  10. JBoss Advanced Training 3일째
  11. 자바프로그래밍 서적 Top 10
  12. Domain Model vs. DTO
  13. Bile Blog – Hani Suleiman 인터뷰
  14. Spring에 관한 흥미로운 글 몇가지
  15. TSE2006 셋째날 세션1 – Applying DDD int the Enterprise with AspectJ

Facebook comments:

to “J2EE Development without EJB (3) – Architecture”

  1. good articles

  2. thank you for share!

  3. thank you for share!

  4. I’ve been browsing online more than 4 hours today, yet I never found any interesting article like
    yours. It’s pretty worth enough for me. In my view, if all site owners and bloggers made good content
    as you did, the web wipl be a lot more useful than ever before.|
    I could not refrain from commenting. Well written!|
    I will immediately clutch your rss as I can nnot in finding your email subscription link or newsletter service.
    Do you hawve any? Please let me recognise so that I may subscribe.

    Thanks.|
    It’s the best time to make some plans for the future and
    it’s time to be happy. I have read this post aand iff I could I want to suggest you some interesting
    things or suggestions. Maybe you can write next articles referring to this article.
    I want to read even morre things about it!|
    It is perfect time to make some plans for the fyture and it’s time to be happy.
    I have read this post and if I may just I desire to counsel you few interesting issues or suggestions.
    Perhaps you could write subsequent articles relating
    to this article. I want to learn even more issues approximately
    it!|
    I’ve been browsing onlkne more than three hours these days, yet I by no means found any fascinating article like yours.
    It’s beautiful worth sufficient for me. In my view, if all website owners and bloggers made excellent content as you did, the web will likely be a lot more useful
    than ever before.|
    Ahaa, its nice discussion on the topic of this piece of writing here at this
    blog, I have read all that, so at this time
    me also commenting at this place.|
    I am sure this paragraph has touched all the internet visitors, its really really good piece of writing on building up new blog.|
    Wow, this piece of writing is good, my sister is analyzing these things, therefore I am going to
    inform her.|
    Saved as a favorite, I really like your site!|
    Way cool! Some very valid points! I appreciate you writing this write-up and also the rest of the website is extremely good.|
    Hi, I do believe this is a great web site. I stumbledupon it ;) I’m
    going to come back onde again since i hae book-marked it.
    Money and reedom is the best way to change, may you bee rich and continue to hdlp othher people.|
    Woah! I’m really loving the template/theme of this blog. It’s simple,
    yet effective. A lot of times it’s very hard to get that “perfect balance” between superb
    usability and appearance. I must say you have
    done a great job with this. Additionally, the blog loads extremely quick for me on Internet explorer.
    Exceptional Blog!|
    These are actually great ideas in regarding blogging.
    You have touched some pleasant factors here.
    Any way keep up wrinting.|
    I really like what you guys are up too. This sort of
    clever work and reporting! Keep up the excellent works guys I’ve
    you guys to my personal blogroll.|
    Heyy there! Someone in my Faceboook group shared this website with us so I came to look
    it over. I’m definitely loving the information. I’m bookmarking and will be tweeting this to
    my followers! Outstanfing blog and briloliant design.|
    Everyone loves what you guys aree up too. This sort of clever work and coverage!

    Keep uup the excellent works guys I’ve incorporated you guys to blogroll.|
    Hi would you mind stating which blog platform you’re using?
    I’m looking to start my own blog soon but I’m having a touigh time making a decision between
    BlogEngine/Wordpress/B2evolutionand Drupal. The reason I ask is because your
    design seems dfferent then most blogs and I’m looking for something
    completely unique. P.S Apologies for being off-topic but I had to ask!|
    Hey there would you mind letting me know which hosting company you’re using?
    I’ve loaded your blog in 3 different internet browsers and I must say
    this blog loads a lot quicker then most. Can you suggest a good hosting provider at
    a fair price? Thank you, I appreciate it!|
    I like it when individuals get together and share views.
    Great website, keep it up!|
    Thank you for the auspicious writeup. It in fact was a amusement account it.

    Look advanced to far added agreeable from you! By the
    way, how can we communicate?|
    Hey there just wanted to give you a quick heads up. The text
    in your content seem to be running off the screen in Safari.
    I’m not sure if this is a formatting issue or something to
    do wih browser compatibility but I figured I’d post to let you know.
    The design look great though! Hope you get the issue resolved soon.
    Cheers|
    This is a topic which is close to my heart… Many thanks!
    Exactly where are your contact details though?|
    It’s very easy tto find out any topic onn net as compared to books, aas Ifound
    this arrticle at this web page.|
    Does your blog have a contact page? I’m having problems locating it but, I’d like to send you an email.

    I’ve got some suggestions for your blog you might be interested in hearing.
    Either way, great website and I look forward to seeing it improve over time.|
    Greetings! I’ve been reading your website forr some time now and finazlly goot thee courage to go ahead and give
    you a shout out from Houston Tx! Justt wanted to tell youu keep up the excellent work!|
    Greetings from Carolina! I’m bored to death at work so I decided
    to browse your website on my iphone during lunch break.

    I love the knowledge you provide here and can’t wait to take a look whsn I get home.
    I’m surprised at how fast your blog loaded on my phone ..

    I’m not even using WIFI, just 3G .. Anyhow, very good blog!|
    Its like you read myy mind! You seem to understand so much about this, like
    you wrote the e-book in it or something. I feel that you just couod do with a feew % to force the message house a bit,
    however instead of that, this is excellent blog.
    An excellent read. I will certainly be back.|
    I visited several web sites but the audio feature for audio songs existing at this site is really wonderful.|
    Hi, i read your blog occasionally and i own a similar one and i was just wondering if you get a lot of spam comments?
    If so how do you protect against it, any plugin or anything you
    can advise? I get so much lately it’s driving me insane so any
    help is very much appreciated.|
    Greetings! Very useful advice within this post!
    It is the little changes that will make the most significant changes.
    Thanks for sharing!|
    I truly love your site.. Pleasant colors & theme.
    Did you make this web site yourself? Please reply back as I’m attempting to create my own site
    and would like to find out where you got this from
    or just what the theme is called. Thank you!|
    Hello there! This blog post could not be written
    any better! Looking at this article reminds me of my previous roommate!
    He constantly kept talking about this. I am going to forward this article to him.

    Pretty sure he’ll have a good read. Thank you for
    sharing!|
    Amazing! This blog looks exactly like my old one! It’s on
    a totally different subject but it has pretty much the same layout and design.
    Superb choice of colors!|
    There’s definately a great deal to know about this issue.
    I really like all the points you’ve made.|
    You made some really good points there. I checked on the internet for
    more information about the issue and found most people will go along with your views on this site.|
    Hi there, I read your new stuff daily. Your story-telling style is awesome,
    keep up the good work!|
    I simply could not depart your site before suggesting that I
    extremely loved the usual information a person supply on your visitors?
    Is gonna be back often to check up on new posts|
    I need to to thank you for this great read!! I certainly enjoyed every
    bit of it. I’ve got you book-marked to look at
    new things you post…|
    Hi, just wanted to say, I enjoyed this article.
    It was inspiring. Keep on posting!|
    I leave a comment whenever I especially enjoy a article on a site or I have something to valuable to contribute to the conversation.
    It is caused by the passion displayed in the article I looked at.

    And after this article J2EE Development without EJB (3)
    - Architecture Toby’s Epril. I was excited enough to post
    a commenta response ;-) I do have 2 questions for you if it’s okay.
    Could it be only me or does it look like like a
    few of these comments look as if they are written by brain dead folks?

    :-P And, if you are writing on additional places, I would like to
    keep up with everything new you have to post.
    Could you list all of all your social pages like your linkedin profile, Facebook page or twitter feed?|
    Hi there, I enjoy reading all of your post.

    I like to write a little comment to support you.|
    I every time spent my half an hour to read this webpage’s articles or reviews every day along with a cup of coffee.|
    I constantly emailed this webpage post page to all my associates,
    since if like to read it next my links will too.|
    My programmer is trying to persuade me to move to .net from PHP.
    I have always disliked the idea because of the costs.
    But he’s tryiong none the less. I’ve been using Movable-type on a
    variety of websites for about a year and am anxious about switching to another
    platform. I have heard great things about blogengine.net.
    Is there a way I can transfer all my wordpress posts into
    it? Any kind of help would be really appreciated!|
    Hello! I could have sworn I’ve been to this
    blog before but after looking at a few of the posts I realized it’s new to me.
    Anyhow, I’m definitely delighted I stumbled upon it and I’ll
    be bookmarking it and checking back regularly!|
    Wonderful work! This is the kind of information that are meant to
    be shared across the web. Disgrace on Google for now not positioning this publish upper!
    Come on over and visit my site . Thanks =)|
    Heya i’m for the first time here. I came across this board and I find It truly
    useful & it helped me out a lot. I hope to give something back and aid others like you aided me.|
    Hello there, There’s no doubt that your website could be having
    web browser compatibility problems. When I take a look at your blog in Safari,
    it looks fine however, when opening in Internet Explorer, it has some overlapping issues.

    I simply wanted to provide you with a quick heads up! Besides that,
    fantastic website!|
    Someone essentially assist to make significantly
    posts I’d state. This is the first time I frequented your web page and so far?
    I surprised with the research you made to create this
    particular publish amazing. Magnificent job!|
    Heya i’m for the first time here. I came across this board and I in finding It
    really helpful & it helped me out a lot. I’m hoping to provide one thing
    back and aid others like you helped me.|
    Hi! I simply would like to give you a big thumbs up for your great info you’ve got here on this post.
    I’ll be returning to your site for more soon.|
    I always used to study article in news papers but now as I am a user
    of web thus from now I am using net for articles or reviews, thanks to web.|
    Your method of explaining everything in this article is actually pleasant,
    every one be able to without difficulty understand it, Thanks a lot.|
    Hello there, I found your blog by means of Google while searching for a comparable matter, your web site came up, it appears
    great. I’ve bookmarked it in my google bookmarks.

    Hi there, just changed into alert to your weblog via Google,
    and located that it’s really informative.

    I am gonna be careful for brussels. I will appreciate should you proceed this
    in future. Numerous people can be benefited out of your writing.
    Cheers!|
    I am curious to find out what blog platform you happen to be using?

    I’m experiencing some minor security problems with
    my latest site and I’d like to find something more secure.
    Do you have any recommendations?|
    I’m extremely impressed with your writing skills and also with the layout on your weblog.
    Is this a paid theme or did you customize it yourself?

    Either way keep up the nice quality writing, it is rare to see a
    nice blog like this one these days.|
    I am really impressed along with your writing talents as neatly as
    with the structure to your weblog. Is that this a paid subject or did you modify it yourself?
    Anyway stay up the excellent high quality writing,
    it’s rare to see a nice blog like this one today..|
    Hello, Neat post. There’s a problem with your web site in internet
    explorer, could test this? IE still is the market chief and a huge section of
    other people will omit your excellent writing because
    of this problem.|
    I am not sure where you’re getting your info, but good topic.
    I needs to spend some time learning much more or
    understanding more. Thanks for wonderful information I was looking for this info for my mission.|
    Hi, i think that i saw you visited my web site thus i came to “return the favor”.I am
    trying to find things to improve my website!I
    suppose its ok to use some of your ideas\

    My web site: longchamp outlet

  5. You Can Try HERE
    [url=http://www.boxingby.com/images/31searchk.php?/fastest-way-to-lose-wieght-meizitang-on-sale-online.html]fastest way to lose wieght-meizitang-on sale online[/url]
    fastest way to lose wieght-meizitang-on sale online

  6. Why Not Look Here
    [url=http://mensbootsoutlet.com]mens ugg slippers[/url]
    mens ugg slippers

  7. I’ve been surfing online more than 3 hours today, yet I never found any interesting article like yours.
    It’s pretty worth enough for me. Personally, if all web owners and bloggers made good content as
    you did, the internet will be much more useful than ever before.|
    I could not refrain from commenting. Exceptionally well written!|
    I’ll right away grab your rss feed as I can’t in finding your email subscription hyperlink or newsletter
    service. Do you have any? Kindly let me know so that I may subscribe.
    Thanks.|
    It is the best time to make some plans for the
    future and it’s time to be happy. I have read this post and
    if I could I want to suggest you few interesting things
    or suggestions. Maybe you could write next articles referring to this article.

    I desire to read more things about it!|
    It is perfect time to make some plans for the
    future and it’s time to be happy. I’ve learn this put up and if I may I desire to suggest you some
    interesting things or advice. Perhaps you can write subsequent articles referring to this article.
    I want to read more things approximately it!|
    I’ve been browsing on-line greater than three hours today, but I never found any fascinating article
    like yours. It’s beautiful worth sufficient for me.

    In my view, if all website owners and bloggers made
    excellent content as you did, the net might be a lot more useful than ever before.|
    Ahaa, its pleasant conversation regarding this piece of writing at this place at this
    weblog, I have read all that, so at this time
    me also commenting here.|
    I am sure this paragraph has touched all the internet people,
    its really really pleasant article on building
    up new web site.|
    Wow, this article is fastidious, my sister is analyzing such things, therefore I am going to convey her.|
    Saved as a favorite, I really like your web site!|
    Way cool! Some very valid points! I appreciate you writing this
    write-up and the rest of the site is extremely
    good.|
    Hi, I do believe this is a great site. I stumbledupon it
    ;) I am going to return once again since I
    bookmarked it. Money and freedom is the best way to change, may
    you be rich and continue to guide others.|
    Woah! I’m really loving the template/theme of
    this site. It’s simple, yet effective. A lot of times it’s difficult
    to get that “perfect balance” between user friendliness and visual appeal.
    I must say you have done a amazing job with this.
    Additionally, the blog loads extremely fast for me on Internet explorer.

    Excellent Blog!|
    These are in fact enormous ideas in regarding blogging.

    You have touched some fastidious things here. Any
    way keep up wrinting.|
    I love what you guys are up too. Such clever work and coverage!
    Keep up the very good works guys I’ve added you guys to my personal blogroll.|
    Howdy! Someone in my Facebook group shared this website with us so I came
    to give it a look. I’m definitely loving the information.
    I’m bookmarking and will be tweeting this to my
    followers! Excellent blog and superb design and style.|
    I like what you guys are usually up too. Such clever work and exposure!
    Keep up the great works guys I’ve included you guys to my personal blogroll.|
    Hi there would you mind sharing which blog platform you’re using?
    I’m going to start my own blog soon but I’m having a hard time deciding between
    BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is
    because your design and style seems different then most blogs and I’m looking
    for something completely unique. P.S Sorry for being off-topic but I
    had to ask!|
    Hey would you mind letting me know which webhost you’re working
    with? I’ve loaded your blog in 3 completely different web browsers and I must say this blog loads a lot
    quicker then most. Can you recommend a good hosting provider at a honest
    price? Thanks a lot, I appreciate it!|
    I love it when individuals come together and share views.
    Great blog, stick with it!|
    Thank you for the good writeup. It in fact was a amusement
    account it. Look advanced to more added agreeable from you!
    By the way, how could we communicate?|
    Howdy just wanted to give you a quick heads up. The text
    in your post seem to be running off the screen in Firefox.
    I’m not sure if this is a format issue or something to do with internet browser compatibility but I thought I’d post to let you
    know. The layout look great though! Hope you get the problem resolved soon.

    Many thanks|
    This is a topic that’s near to my heart… Take
    care! Exactly where are your contact details though?|
    It’s very straightforward to find out any matter on net as compared to books, as I
    found this paragraph at this site.|
    Does your website have a contact page? I’m having a tough
    time locating it but, I’d like to shoot you an
    email. I’ve got some suggestions for your
    blog you might be interested in hearing. Either way, great website and I look forward
    to seeing it develop over time.|
    Hello! I’ve been following your site for a while now and finally
    got the courage to go ahead and give you a shout out from Huffman Texas!
    Just wanted to mention keep up the fantastic job!|
    Greetings from California! I’m bored at work so
    I decided to check out your site on my iphone during lunch
    break. I enjoy the information you present here and can’t wait
    to take a look when I get home. I’m surprised at
    how fast your blog loaded on my mobile ..

    I’m not even using WIFI, just 3G .. Anyways, superb site!|
    Its like you read my mind! You appear to grasp so much about this, such as you wrote the book in
    it or something. I think that you just could do with some percent to power the
    message house a little bit, however instead of that, that
    is wonderful blog. A great read. I’ll definitely be back.|
    I visited several websites except the audio feature for audio songs present at this web
    site is actually wonderful.|
    Hi there, i read your blog from time to time and i own a similar one and i was just wondering if you get a lot of
    spam responses? If so how do you stop it, any plugin or anything you can suggest?
    I get so much lately it’s driving me insane so any help is very much appreciated.|
    Greetings! Very useful advice in this particular post! It is the little changes that will make the largest changes.
    Thanks a lot for sharing!|
    I seriously love your blog.. Great colors & theme. Did you create this website yourself?
    Please reply back as I’m looking to create my very own blog and want to learn where you
    got this from or what the theme is called. Cheers!|
    Hello there! This article could not be written any better!
    Reading through this article reminds me of
    my previous roommate! He always kept preaching about this.
    I will send this post to him. Fairly certain he will have a great read.
    Thank you for sharing!|
    Wow! This blog looks just like my old one!
    It’s on a totally different topic but it has pretty much
    the same layout and design. Great choice of colors!|
    There is certainly a great deal to find out about this issue.
    I really like all the points you’ve made.|
    You made some really good points there. I checked on the internet for more information
    about the issue and found most individuals will go along
    with your views on this website.|
    Hi there, I check your blog on a regular basis.

    Your writing style is awesome, keep doing what you’re doing!|
    I simply couldn’t go away your site prior to suggesting that
    I really enjoyed the usual info an individual provide to your guests?
    Is going to be again regularly in order to investigate cross-check new posts|
    I needed to thank you for this wonderful read!! I definitely enjoyed every little bit
    of it. I’ve got you saved as a favorite to check out new stuff you post…|
    What’s up, just wanted to say, I enjoyed this blog post.
    It was inspiring. Keep on posting!|
    I drop a leave a response when I like a article on a site
    or if I have something to add to the conversation. Usually it’s a result
    of the sincerness communicated in the post I read. And after this post J2EE Development
    without EJB (3) – Architecture Toby’s Epril. I was actually moved
    enough to post a thought ;) I actually do have a couple of questions for you
    if it’s okay. Could it be only me or does it appear like a few of these responses appear like they are written by brain dead visitors?

    :-P And, if you are writing at additional places, I’d
    like to follow you. Could you make a list the complete
    urls of all your shared pages like your linkedin profile, Facebook page or
    twitter feed?|
    Hello, I enjoy reading through your article post. I wanted
    to write a little comment to support you.|
    I every time spent my half an hour to read this webpage’s
    posts every day along with a cup of coffee.|
    I constantly emailed this web site post page to all my associates, because if like to read it next my
    contacts will too.|
    My coder is trying to persuade me to move to .net from PHP.
    I have always disliked the idea because of the costs.

    But he’s tryiong none the less. I’ve been using Movable-type on a number of websites for
    about a year and am anxious about switching to another platform.
    I have heard very good things about blogengine.net.

    Is there a way I can import all my wordpress content into it?
    Any kind of help would be really appreciated!|
    Howdy! I could have sworn I’ve been to this site before but after browsing through a few
    of the articles I realized it’s new to me.
    Anyways, I’m certainly delighted I found it and I’ll be bookmarking it and checking back often!|
    Terrific article! That is the type of info that should be shared across the web.
    Disgrace on the seek engines for not positioning this put up higher!

    Come on over and discuss with my web site . Thank you =)|
    Heya i’m for the first time here. I came across this
    board and I find It truly useful & it helped me out much. I hope to give something back
    and aid others like you aided me.|
    Hello, I believe your site might be having browser compatibility issues.
    When I take a look at your site in Safari, it
    looks fine however when opening in I.E., it has some overlapping issues.
    I just wanted to provide you with a quick heads up!
    Other than that, great blog!|
    Somebody essentially lend a hand to make severely articles I might state.
    This is the first time I frequented your web page and to this point?

    I amazed with the analysis you made to make this actual submit incredible.
    Fantastic activity!|
    Heya i’m for the primary time here. I came across this board and I
    in finding It really useful & it helped me out a lot.
    I am hoping to present something again and aid others like
    you helped me.|
    Hi there! I just want to offer you a big thumbs up for your excellent information you have right
    here on this post. I am coming back to your website
    for more soon.|
    I every time used to study piece of writing in news
    papers but now as I am a user of net thus from
    now I am using net for articles or reviews,
    thanks to web.|
    Your means of explaining the whole thing in this post is in
    fact fastidious, all be able to easily be aware of it, Thanks a lot.|
    Hi there, I found your website via Google while looking for
    a similar matter, your website got here up, it appears great.
    I’ve bookmarked it in my google bookmarks.
    Hi there, simply was alert to your weblog thru Google, and located that it’s truly informative.
    I am going to be careful for brussels. I will be grateful if
    you continue this in future. Lots of folks will be benefited out of your writing.
    Cheers!|
    I am curious to find out what blog system you’re working with?
    I’m having some minor security problems with my latest site and I would like to find something more secure.

    Do you have any solutions?|
    I’m really impressed with your writing skills as well as with the layout on your weblog.
    Is this a paid theme or did you modify it yourself? Anyway keep up the excellent
    quality writing, it’s rare to see a nice blog like this one these days.|
    I’m extremely inspired together with your writing talents as neatly as with the structure on
    your weblog. Is this a paid theme or did you modify it your self?
    Either way stay up the nice high quality writing, it’s rare to
    peer a great blog like this one today..|
    Hello, Neat post. There is an issue together with your web site in web explorer, might check this?
    IE nonetheless is the market leader and
    a big component to other folks will leave out your wonderful writing because of this problem.|
    I’m not sure where you’re getting your info, but great topic.
    I needs to spend some time learning more or understanding more.
    Thanks for fantastic information I was looking for this info for
    my mission.|
    Hi, i think that i saw you visited my website so i came to
    “return the favor”.I’m attempting to find things to improve my site!I suppose its ok
    to use some of your ideas
    \

  8. 45rXQq This very blog is really awesome and also factual. I have chosen many handy stuff out of this source. I ad love to go back again and again. Thanks!

  9. I see something really special in this web site.

  10. Well I truly liked studying it. This information procured by you is very helpful for correct planning.

  11. Thanks-a-mundo for the post.Much thanks again. Want more.

  12. Wow, amazing blog structure! How lengthy have you ever been blogging for? you make blogging look easy. The whole look of your web site is excellent, as well as the content!

Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2017 Toby's Epril Suffusion theme by Sayontan Sinha