@ 17. 1 ~ 18
-
JOIN 관련@ 17. 1 ~ 18/DB 2018. 2. 26. 23:44
일대다 관계를 해결하기 위해 사용.일대다 관계는 보통 일(기본키 pk)와 다(외래키)를 활용한다. INNER JOIN가장 많이 사용되는 조인으로 대개의 업무에서 사용된다. 일반적인 조인이라고 보면된다.사용되는 예구매 테이블이 있고 여기에는 물건을 구매한 사용자의 아이디와 물건 등의 정보만 있다.그런데 물건을 배송하기 위해 회원의 주소를 알아야하는데 회원의 주소정보는 회원 테이블에 있다.이때 결합하는것이 INNER JOIN이다SELECT FROM INNER JOIN ON [WHERE 검색조건] SELECT * FROM buyTbl AINNER JOIN userTbl BON buyTbl.userId = userTbl.userIdWHERE buyTbl.userId = 'BBB' 위에 A, B는 ..
-
리눅스 기초(명령어 위주)@ 17. 1 ~ 18/리눅스 2018. 2. 5. 01:49
리눅스 폴더구조(권장크기는 다른내용임. 비고만 볼것) 리눅스 명령어명령어 사이를 세미콜론으로 구분하면 연속으로 실행할때 사용한다는 의미이다.fdisk -l /dev/sdb; fdisk -l /dev/sdc(연속두번의 fdisk가 실행된다)pwd : 현재 디렉터리 보여준다ls -l : 현재 디렉터리의 파일리스트ls -a : 현재 디렉터리의 목록(숨김파일 포함)ls *.확장자ls -l /etc/sysconfig/a* : 해당 디렉터리에 있는 목록 중에서 앞글자가 a인것들 목록cd /etc : etc폴더로 이동halt -p : 종료한다df : 시스템에 마운트된 하드디스크를 확인할때 사용한다. cd 명령어 관련. 현재 디렉터리 .. 현재 디렉터의 상위 디렉터리cp ../lib/abc . : 현재 디렉터리의 상위..
-
비주얼 스튜디오의 텍스트 템플릿 사용해보기@ 17. 1 ~ 18/용어정리 2017. 9. 21. 23:41
자세한 문법사용 내용은https://msdn.microsoft.com/ko-kr/library/bb126545.aspxtest.cs 파일1234567891011121314151617181920using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks; namespace ConsoleApp2 { /// /// 여기에 test는 tt파일과 같은 이름의 클래스를 partial로 구분해서 정의하고 있는것 /// string name은 실제 tt파일내부에서 으로 사용하기 위해서이다. /// partial class test { pri..
-
ACID 그리고 CAP개념@ 17. 1 ~ 18/DB 2017. 9. 7. 00:38
Atomicity : 분해할 수 없이 원자적이고Consistency : 일관된 데이터를 유지하고Isolation : 고립되어 다른 연산이 끼어들 수 없고Durability : 데이터가 영원히 반영된 상태로 있는 ACID 트랜잭션은 관계형 데이터베이스에서 여러 개의 SQL연산을 하나의 단일 트랜잭션으로 처리하는 것을 의미한다.여러개의 테이블에 대해서 읽고 쓰고 하는 행동을 하나의 연산처럼 사용하는 것이다. 트랜잭션에서 가장 중요한 개념은 원자성이다.여러개의 SQL 연산이 하나의 연산처럼 동작해야 한다. 어느것 하나라도 실패했다면 모든 연산이 실행되지 않아야 한다. 일관성은 같은 시점에 접속하는 클라이언트들은 항상 같은 데이터를 보고 있어야 한다는 것고립성은 트랜잭션이 수행되는 동안에 다른 연산이 끼어들지 ..
-
반응형 확장(RX)@ 17. 1 ~ 18/C# Rx(Reactive Extensions) 2017. 8. 20. 04:50
이벤트 기반 비동기 패턴객체간의 통지를 구현하는 관찰자 디자인 패턴을 간단하게 구현하는 것. 풀기반 방식 푸시기반 방식생산자가 새로운 값에 관해 클라이언트에 통지하는 방식클라이언트가 아무런 일을 하지 않은 상태에서 다른 값을 기다리는 동안에 생산자에게 작업 분담을 허용한다.즉, 값의 순서를 생산하고 소비자에게 순서대로 각 항목을 통지 닷넷 4.0부터 비동기 푸시 기반 컬렉션과 자체 클라이언트를 함께 대표하는IObservable와 IObserver인터페이스 정의를 포함하기 시작했다.이 두 인터페이스는 효율적으로 이벤트의 순서를 조합하고 관찰 가능한 컬렉션을 이용해 실제로 모든 다른 타입의 비동기 프로그램에 도움을 주기위해 RX라이브러리라는게 나온다. 컬렉션을 관찰 가능한 비동기 컬렉션으로 변환Enumera..
-
동시성 컬렉션 사용@ 17. 1 ~ 18/C# 멀티스레드 2017. 8. 20. 04:27
동시성 계산의 경우 적절한 데이터 구조가 필요함.이 데이터 구조는 확장성이 있으며 최대한 잠금을 피하는 동시에 스레드에 안정한 접근을 제공해야한다.닷넷 프레임워크 버전 4에는 여러 데이터 구조를 포함한 System.Collections.Concurrent네임스페이스가 있다. ConcurrentQueue비교하고 둘을 바꾸는 CAS 원자 연산과 SpinWait를 사용하며 스레드에 안전함을 보장한다.당연히 선입 선출. ConcurrentStack 어떠한 잠금을 사용하지 않은 채 CAS 연산만으로도 구현된다.당연히 후입 선출 ConcurrentDictionary스레드에 안전한 딕셔너리 컬렉션읽기 연산에는 잠금이 필요 없지만 쓰기 연산에는 잠금이 필요하다. 쓰기 연산에서는 잠금을 이용한 일반 딕셔너리에 비해 상당..
-
async, await에 대한 설명@ 17. 1 ~ 18/C# 멀티스레드 2017. 8. 19. 13:22
출처 : http://blog.stephencleary.com/2012/02/async-and-await.html 키워드 소개비동기 메서드는 다음과 같다.public async Task DoSomethingAsync() { // In the Real World, we would actually do something... // For this example, we're just going to (asynchronously) wait 100ms. await Task.Delay(100); }async키워드는 해당 메소드에서 await키워드를 사용가능하게 메소드 결과 처리 방법을 변경한다.비동기 메소드의 시작은 다른 메소드와 마찬가지로 실행된다. 즉 , await이 될떄까지 동기적으로 실행한다.await 키워..
-
데드락 걸리는 async 코드@ 17. 1 ~ 18/C# 멀티스레드 2017. 8. 19. 10:14
내용에 대한 출처http://blog.stephencleary.com/2012/07/dont-block-on-async-code.html UI Example아래 예제를 고려하십시오. 버튼을 클릭하면 REST 호출이 시작되고 텍스트 상자에 결과가 표시됩니다 (이 샘플은 Windows Forms 용이지만 모든 UI 응용 프로그램에도 동일한 원칙이 적용됩니다).// My "library" method. public static async Task GetJsonAsync(Uri uri) { using (var client = new HttpClient()) { var jsonString = await client.GetStringAsync(uri); return JObject.Parse(jsonString); ..